From bd4e67d289bd025f1285f39c1a3d29277c4f7102 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Mon, 18 Feb 2013 21:27:13 +0000 Subject: some unit test, more required --- _test/tests/inc/common_infofunctions.test.php | 112 ++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 _test/tests/inc/common_infofunctions.test.php (limited to '_test/tests/inc') diff --git a/_test/tests/inc/common_infofunctions.test.php b/_test/tests/inc/common_infofunctions.test.php new file mode 100644 index 000000000..b66e6f687 --- /dev/null +++ b/_test/tests/inc/common_infofunctions.test.php @@ -0,0 +1,112 @@ + '179ad45c6ce2cb97cf1029e212046e81', + 'name' => 'Arthur Dent', + 'mail' => 'arthur@example.com', + 'grps' => array ('admin','user'), + ); + $_SERVER['REMOTE_USER'] = 'testuser'; + $_SERVER['REMOTE_ADDR'] = '1.2.3.4'; + } + + function _get_info() { + global $USERINFO; + $info = array ( + 'isadmin' => true, + 'ismanager' => true, + 'userinfo' => $USERINFO, + 'perm' => 255, + 'namespace' => false, + 'ismobile' => false, + 'client' => 'testuser', + ); + + return $info; + } + + /** + * Its important to have the correct set of keys. + * Other functions provide the values + */ + function test_basicinfo(){ + // test with REMOTE_USER set and the user an admin user + $info = $this->_get_info(); + $this->assertEquals(basicinfo($ID,true),$info); + + // with $httpclient parameter set to false + unset($info['ismobile']); + $this->assertEquals(basicinfo($ID,false),$info); + + // with anonymous user + unset($_SERVER['REMOTE_USER']); + global $USERINFO; $USERINFO = array(); + + $info = array( + 'isadmin' => false, + 'ismanager' => false, + 'perm' => 8, + 'namespace' => false, + 'ismobile' => false, + 'client' => '1.2.3.4', + ); + $this->assertEquals(basicinfo($ID,true),$info); + } + + /** + * We're interested in the extra keys required for $INFO when its a page request + * and that $REV, $RANGE globals are set/cleared correctly + */ + function test_pageinfo(){ + global $ID,$conf; + $ID = 'wiki:start'; + + $info = $this->_get_info(); + $info['id'] = 'wiki:start'; + $info['namespace'] = 'wiki'; + $info['rev'] = null; + $info['subscribed'] = false; + $info['locked'] = false; + $info['filepath'] = $conf['datadir'].'/wiki/start.txt'; + $info['exists'] = false; + $info['writable'] = true; + $info['editable'] = true; + $info['lastmod'] = false; + $info['meta'] = array(); + $info['ip'] = null; + $info['user'] = null; + $info['sum'] = null; + $info['editor'] = null; + + // basic test, no revision + $this->assertEquals(pageinfo(),$info); + + // TODO: test with revision = current page + + // TODO: test with true revision + + // TODO: test with revision & range + } + + /** + * We're interested in the extra keys for $INFO when its a media request + */ + function test_mediainfo(){ + global $NS, $IMG; + $NS = ''; + $IMG = 'testimage.png'; + + $info = $this->_get_info(); + $info['image'] = 'testimage.png'; + + $this->assertEquals(mediainfo(),$info); + } +} + +//Setup VIM: ex: et ts=4 : -- cgit v1.2.3 From 177daee5492e8c3cdfdb950cdf61a6798f7a9586 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Thu, 21 Feb 2013 17:22:50 +0000 Subject: another test todo --- _test/tests/inc/common_infofunctions.test.php | 2 ++ 1 file changed, 2 insertions(+) (limited to '_test/tests/inc') diff --git a/_test/tests/inc/common_infofunctions.test.php b/_test/tests/inc/common_infofunctions.test.php index b66e6f687..2e383ef8b 100644 --- a/_test/tests/inc/common_infofunctions.test.php +++ b/_test/tests/inc/common_infofunctions.test.php @@ -92,6 +92,8 @@ class common_infofunctions_test extends DokuWikiTest { // TODO: test with true revision // TODO: test with revision & range + + // TODO: validate against the same test run on master branch pre this change } /** -- cgit v1.2.3 From 7ae29fa453970036576e8b18fe228c24a25e94ff Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Mon, 25 Feb 2013 15:00:16 +0000 Subject: refactor info functions test pageinfo() test no longer required, unit test committed elsewhere and verified against both previous and updated versions of pageinfo() fn. basicinfo() and mediainfo() tests separated each into their own test file. --- _test/tests/inc/common_basicinfo.test.php | 114 ++++++++++++++++++++++++++ _test/tests/inc/common_infofunctions.test.php | 114 -------------------------- _test/tests/inc/common_mediainfo.test.php | 49 +++++++++++ 3 files changed, 163 insertions(+), 114 deletions(-) create mode 100644 _test/tests/inc/common_basicinfo.test.php delete mode 100644 _test/tests/inc/common_infofunctions.test.php create mode 100644 _test/tests/inc/common_mediainfo.test.php (limited to '_test/tests/inc') diff --git a/_test/tests/inc/common_basicinfo.test.php b/_test/tests/inc/common_basicinfo.test.php new file mode 100644 index 000000000..2e383ef8b --- /dev/null +++ b/_test/tests/inc/common_basicinfo.test.php @@ -0,0 +1,114 @@ + '179ad45c6ce2cb97cf1029e212046e81', + 'name' => 'Arthur Dent', + 'mail' => 'arthur@example.com', + 'grps' => array ('admin','user'), + ); + $_SERVER['REMOTE_USER'] = 'testuser'; + $_SERVER['REMOTE_ADDR'] = '1.2.3.4'; + } + + function _get_info() { + global $USERINFO; + $info = array ( + 'isadmin' => true, + 'ismanager' => true, + 'userinfo' => $USERINFO, + 'perm' => 255, + 'namespace' => false, + 'ismobile' => false, + 'client' => 'testuser', + ); + + return $info; + } + + /** + * Its important to have the correct set of keys. + * Other functions provide the values + */ + function test_basicinfo(){ + // test with REMOTE_USER set and the user an admin user + $info = $this->_get_info(); + $this->assertEquals(basicinfo($ID,true),$info); + + // with $httpclient parameter set to false + unset($info['ismobile']); + $this->assertEquals(basicinfo($ID,false),$info); + + // with anonymous user + unset($_SERVER['REMOTE_USER']); + global $USERINFO; $USERINFO = array(); + + $info = array( + 'isadmin' => false, + 'ismanager' => false, + 'perm' => 8, + 'namespace' => false, + 'ismobile' => false, + 'client' => '1.2.3.4', + ); + $this->assertEquals(basicinfo($ID,true),$info); + } + + /** + * We're interested in the extra keys required for $INFO when its a page request + * and that $REV, $RANGE globals are set/cleared correctly + */ + function test_pageinfo(){ + global $ID,$conf; + $ID = 'wiki:start'; + + $info = $this->_get_info(); + $info['id'] = 'wiki:start'; + $info['namespace'] = 'wiki'; + $info['rev'] = null; + $info['subscribed'] = false; + $info['locked'] = false; + $info['filepath'] = $conf['datadir'].'/wiki/start.txt'; + $info['exists'] = false; + $info['writable'] = true; + $info['editable'] = true; + $info['lastmod'] = false; + $info['meta'] = array(); + $info['ip'] = null; + $info['user'] = null; + $info['sum'] = null; + $info['editor'] = null; + + // basic test, no revision + $this->assertEquals(pageinfo(),$info); + + // TODO: test with revision = current page + + // TODO: test with true revision + + // TODO: test with revision & range + + // TODO: validate against the same test run on master branch pre this change + } + + /** + * We're interested in the extra keys for $INFO when its a media request + */ + function test_mediainfo(){ + global $NS, $IMG; + $NS = ''; + $IMG = 'testimage.png'; + + $info = $this->_get_info(); + $info['image'] = 'testimage.png'; + + $this->assertEquals(mediainfo(),$info); + } +} + +//Setup VIM: ex: et ts=4 : diff --git a/_test/tests/inc/common_infofunctions.test.php b/_test/tests/inc/common_infofunctions.test.php deleted file mode 100644 index 2e383ef8b..000000000 --- a/_test/tests/inc/common_infofunctions.test.php +++ /dev/null @@ -1,114 +0,0 @@ - '179ad45c6ce2cb97cf1029e212046e81', - 'name' => 'Arthur Dent', - 'mail' => 'arthur@example.com', - 'grps' => array ('admin','user'), - ); - $_SERVER['REMOTE_USER'] = 'testuser'; - $_SERVER['REMOTE_ADDR'] = '1.2.3.4'; - } - - function _get_info() { - global $USERINFO; - $info = array ( - 'isadmin' => true, - 'ismanager' => true, - 'userinfo' => $USERINFO, - 'perm' => 255, - 'namespace' => false, - 'ismobile' => false, - 'client' => 'testuser', - ); - - return $info; - } - - /** - * Its important to have the correct set of keys. - * Other functions provide the values - */ - function test_basicinfo(){ - // test with REMOTE_USER set and the user an admin user - $info = $this->_get_info(); - $this->assertEquals(basicinfo($ID,true),$info); - - // with $httpclient parameter set to false - unset($info['ismobile']); - $this->assertEquals(basicinfo($ID,false),$info); - - // with anonymous user - unset($_SERVER['REMOTE_USER']); - global $USERINFO; $USERINFO = array(); - - $info = array( - 'isadmin' => false, - 'ismanager' => false, - 'perm' => 8, - 'namespace' => false, - 'ismobile' => false, - 'client' => '1.2.3.4', - ); - $this->assertEquals(basicinfo($ID,true),$info); - } - - /** - * We're interested in the extra keys required for $INFO when its a page request - * and that $REV, $RANGE globals are set/cleared correctly - */ - function test_pageinfo(){ - global $ID,$conf; - $ID = 'wiki:start'; - - $info = $this->_get_info(); - $info['id'] = 'wiki:start'; - $info['namespace'] = 'wiki'; - $info['rev'] = null; - $info['subscribed'] = false; - $info['locked'] = false; - $info['filepath'] = $conf['datadir'].'/wiki/start.txt'; - $info['exists'] = false; - $info['writable'] = true; - $info['editable'] = true; - $info['lastmod'] = false; - $info['meta'] = array(); - $info['ip'] = null; - $info['user'] = null; - $info['sum'] = null; - $info['editor'] = null; - - // basic test, no revision - $this->assertEquals(pageinfo(),$info); - - // TODO: test with revision = current page - - // TODO: test with true revision - - // TODO: test with revision & range - - // TODO: validate against the same test run on master branch pre this change - } - - /** - * We're interested in the extra keys for $INFO when its a media request - */ - function test_mediainfo(){ - global $NS, $IMG; - $NS = ''; - $IMG = 'testimage.png'; - - $info = $this->_get_info(); - $info['image'] = 'testimage.png'; - - $this->assertEquals(mediainfo(),$info); - } -} - -//Setup VIM: ex: et ts=4 : diff --git a/_test/tests/inc/common_mediainfo.test.php b/_test/tests/inc/common_mediainfo.test.php new file mode 100644 index 000000000..0e67fbcd9 --- /dev/null +++ b/_test/tests/inc/common_mediainfo.test.php @@ -0,0 +1,49 @@ + '179ad45c6ce2cb97cf1029e212046e81', + 'name' => 'Arthur Dent', + 'mail' => 'arthur@example.com', + 'grps' => array ('admin','user'), + ); + $_SERVER['REMOTE_USER'] = 'testuser'; + $_SERVER['REMOTE_ADDR'] = '1.2.3.4'; + } + + function _get_info() { + global $USERINFO; + $info = array ( + 'isadmin' => true, + 'ismanager' => true, + 'userinfo' => $USERINFO, + 'perm' => 255, + 'namespace' => false, + 'ismobile' => false, + 'client' => 'testuser', + ); + + return $info; + } + + /** + * We're interested in the extra keys for $INFO when its a media request + */ + function test_mediainfo(){ + global $NS, $IMG; + $NS = ''; + $IMG = 'testimage.png'; + + $info = $this->_get_info(); + $info['image'] = 'testimage.png'; + + $this->assertEquals(mediainfo(),$info); + } +} + +//Setup VIM: ex: et ts=4 : -- cgit v1.2.3 From 5ba389b2134d71e9b0a8b78a465bb4e8849ab664 Mon Sep 17 00:00:00 2001 From: Christopher Smith Date: Mon, 25 Feb 2013 15:10:39 +0000 Subject: (incl. the refactored file) --- _test/tests/inc/common_basicinfo.test.php | 50 ------------------------------- 1 file changed, 50 deletions(-) (limited to '_test/tests/inc') diff --git a/_test/tests/inc/common_basicinfo.test.php b/_test/tests/inc/common_basicinfo.test.php index 2e383ef8b..0369474c9 100644 --- a/_test/tests/inc/common_basicinfo.test.php +++ b/_test/tests/inc/common_basicinfo.test.php @@ -59,56 +59,6 @@ class common_infofunctions_test extends DokuWikiTest { $this->assertEquals(basicinfo($ID,true),$info); } - /** - * We're interested in the extra keys required for $INFO when its a page request - * and that $REV, $RANGE globals are set/cleared correctly - */ - function test_pageinfo(){ - global $ID,$conf; - $ID = 'wiki:start'; - - $info = $this->_get_info(); - $info['id'] = 'wiki:start'; - $info['namespace'] = 'wiki'; - $info['rev'] = null; - $info['subscribed'] = false; - $info['locked'] = false; - $info['filepath'] = $conf['datadir'].'/wiki/start.txt'; - $info['exists'] = false; - $info['writable'] = true; - $info['editable'] = true; - $info['lastmod'] = false; - $info['meta'] = array(); - $info['ip'] = null; - $info['user'] = null; - $info['sum'] = null; - $info['editor'] = null; - - // basic test, no revision - $this->assertEquals(pageinfo(),$info); - - // TODO: test with revision = current page - - // TODO: test with true revision - - // TODO: test with revision & range - - // TODO: validate against the same test run on master branch pre this change - } - - /** - * We're interested in the extra keys for $INFO when its a media request - */ - function test_mediainfo(){ - global $NS, $IMG; - $NS = ''; - $IMG = 'testimage.png'; - - $info = $this->_get_info(); - $info['image'] = 'testimage.png'; - - $this->assertEquals(mediainfo(),$info); - } } //Setup VIM: ex: et ts=4 : -- cgit v1.2.3