From 69c97a71476e4eaa6c629022fcd4ec7f36d4ec0d Mon Sep 17 00:00:00 2001 From: Pascal Kriete Date: Wed, 20 Apr 2011 21:44:54 -0400 Subject: Adding early bootstrap ideas for core test suite --- tests/codeigniter/core/Config_test.php | 107 +++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 tests/codeigniter/core/Config_test.php (limited to 'tests/codeigniter/core/Config_test.php') diff --git a/tests/codeigniter/core/Config_test.php b/tests/codeigniter/core/Config_test.php new file mode 100644 index 000000000..628fc630b --- /dev/null +++ b/tests/codeigniter/core/Config_test.php @@ -0,0 +1,107 @@ +ci_core_class('cfg'); + + $stub = $this->getMock($cls, NULL, array(), '', FALSE); + + //I would prefer this, but it currently + // does not work as when you try to pass + // null to setMethods it fails on an internal + // function call that expects an array =( + /* + $stub = $this->getMockBuilder($cls) + ->disableOriginalConstructor() + ->setMethods(null) + ->getMock(); + */ + + + // set predictable config values + $stub->config = array( + 'index_page' => 'index.php', + 'base_url' => 'http://example.com/', + 'subclass_prefix' => 'MY_' + ); + + $this->config = $stub; + } + + // -------------------------------------------------------------------- + + public function testItem() + { + $this->assertEquals('http://example.com/', $this->config->item('base_url')); + + // Bad Config value + $this->assertFalse($this->config->item('no_good_item')); + + // Index + $this->assertFalse($this->config->item('no_good_item', 'bad_index')); + $this->assertFalse($this->config->item('no_good_item', 'default')); + } + + // -------------------------------------------------------------------- + + public function testSetItem() + { + $this->assertFalse($this->config->item('not_yet_set')); + + $this->config->set_item('not_yet_set', 'is set'); + + $this->assertEquals('is set', $this->config->item('not_yet_set')); + } + + // -------------------------------------------------------------------- + + public function testSlashItem() + { + // Bad Config value + $this->assertFalse($this->config->slash_item('no_good_item')); + + $this->assertEquals('http://example.com/', $this->config->slash_item('base_url')); + + $this->assertEquals('MY_/', $this->config->slash_item('subclass_prefix')); + } + + // -------------------------------------------------------------------- + + public function testSiteUrl() + { + $this->assertEquals('http://example.com/index.php', $this->config->site_url()); + + $base_url = $this->config->item('base_url'); + + $this->config->set_item('base_url', ''); + + $q_string = $this->config->item('enable_query_strings'); + + $this->config->set_item('enable_query_strings', FALSE); + + $this->assertEquals('/index.php/test', $this->config->site_url('test')); + $this->assertEquals('/index.php/test/1', $this->config->site_url(array('test', '1'))); + + $this->config->set_item('enable_query_strings', TRUE); + + $this->assertEquals('/index.php?test', $this->config->site_url('test')); + $this->assertEquals('/index.php?0=test&1=1', $this->config->site_url(array('test', '1'))); + + $this->config->set_item('base_url', $base_url); + + $this->assertEquals('http://example.com/index.php?test', $this->config->site_url('test')); + + // back to home base + $this->config->set_item('enable_query_strings', $q_string); + } + + // -------------------------------------------------------------------- + + public function testSystemUrl() + { + $this->assertEquals('http://example.com/system/', $this->config->system_url()); + } + +} \ No newline at end of file -- cgit v1.2.3-24-g4f1b From 10ba64f9b76a25a77182d72a0a09413ccba12770 Mon Sep 17 00:00:00 2001 From: Pascal Kriete Date: Thu, 21 Apr 2011 01:00:27 -0400 Subject: Renamed the main test class, fixing test cases. --- tests/codeigniter/core/Config_test.php | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) (limited to 'tests/codeigniter/core/Config_test.php') diff --git a/tests/codeigniter/core/Config_test.php b/tests/codeigniter/core/Config_test.php index 628fc630b..b04dd67fa 100644 --- a/tests/codeigniter/core/Config_test.php +++ b/tests/codeigniter/core/Config_test.php @@ -1,33 +1,19 @@ ci_core_class('cfg'); - - $stub = $this->getMock($cls, NULL, array(), '', FALSE); - - //I would prefer this, but it currently - // does not work as when you try to pass - // null to setMethods it fails on an internal - // function call that expects an array =( - /* - $stub = $this->getMockBuilder($cls) - ->disableOriginalConstructor() - ->setMethods(null) - ->getMock(); - */ - - + // set predictable config values - $stub->config = array( + $this->ci_set_config(array( 'index_page' => 'index.php', 'base_url' => 'http://example.com/', 'subclass_prefix' => 'MY_' - ); - - $this->config = $stub; + )); + + $this->config = new $cls; } // -------------------------------------------------------------------- -- cgit v1.2.3-24-g4f1b From 68286a4dcc1ed4d904ad992173c1b3621bf6fced Mon Sep 17 00:00:00 2001 From: Eric Barnes Date: Thu, 21 Apr 2011 22:00:33 -0400 Subject: Reworked unit tests to match rest of framework and added a few more. --- tests/codeigniter/core/Config_test.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'tests/codeigniter/core/Config_test.php') diff --git a/tests/codeigniter/core/Config_test.php b/tests/codeigniter/core/Config_test.php index b04dd67fa..b6c57da70 100644 --- a/tests/codeigniter/core/Config_test.php +++ b/tests/codeigniter/core/Config_test.php @@ -2,7 +2,7 @@ class Config_test extends CI_TestCase { - public function setUp() + public function set_up() { $cls =& $this->ci_core_class('cfg'); @@ -18,7 +18,7 @@ class Config_test extends CI_TestCase { // -------------------------------------------------------------------- - public function testItem() + public function test_item() { $this->assertEquals('http://example.com/', $this->config->item('base_url')); @@ -32,7 +32,7 @@ class Config_test extends CI_TestCase { // -------------------------------------------------------------------- - public function testSetItem() + public function test_set_item() { $this->assertFalse($this->config->item('not_yet_set')); @@ -43,7 +43,7 @@ class Config_test extends CI_TestCase { // -------------------------------------------------------------------- - public function testSlashItem() + public function test_slash_item() { // Bad Config value $this->assertFalse($this->config->slash_item('no_good_item')); @@ -55,7 +55,7 @@ class Config_test extends CI_TestCase { // -------------------------------------------------------------------- - public function testSiteUrl() + public function test_site_url() { $this->assertEquals('http://example.com/index.php', $this->config->site_url()); @@ -85,7 +85,7 @@ class Config_test extends CI_TestCase { // -------------------------------------------------------------------- - public function testSystemUrl() + public function test_system_url() { $this->assertEquals('http://example.com/system/', $this->config->system_url()); } -- cgit v1.2.3-24-g4f1b From cf1926acb352f1d80cab7c1bc7e1ec5457a2b43d Mon Sep 17 00:00:00 2001 From: Eric Barnes Date: Mon, 29 Aug 2011 00:00:51 -0400 Subject: Removed beginning slash in expected for site_url. --- tests/codeigniter/core/Config_test.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'tests/codeigniter/core/Config_test.php') diff --git a/tests/codeigniter/core/Config_test.php b/tests/codeigniter/core/Config_test.php index b6c57da70..30f0cc61d 100644 --- a/tests/codeigniter/core/Config_test.php +++ b/tests/codeigniter/core/Config_test.php @@ -67,13 +67,13 @@ class Config_test extends CI_TestCase { $this->config->set_item('enable_query_strings', FALSE); - $this->assertEquals('/index.php/test', $this->config->site_url('test')); - $this->assertEquals('/index.php/test/1', $this->config->site_url(array('test', '1'))); + $this->assertEquals('index.php/test', $this->config->site_url('test')); + $this->assertEquals('index.php/test/1', $this->config->site_url(array('test', '1'))); $this->config->set_item('enable_query_strings', TRUE); - $this->assertEquals('/index.php?test', $this->config->site_url('test')); - $this->assertEquals('/index.php?0=test&1=1', $this->config->site_url(array('test', '1'))); + $this->assertEquals('index.php?test', $this->config->site_url('test')); + $this->assertEquals('index.php?0=test&1=1', $this->config->site_url(array('test', '1'))); $this->config->set_item('base_url', $base_url); -- cgit v1.2.3-24-g4f1b