<?php /** * Router tests */ require_once 'application/Router.php'; /** * Unit tests for Router */ class RouterTest extends PHPUnit_Framework_TestCase { /** * Test findPage: login page output. * Valid: page should be return. * * @return void */ public function testFindPageLoginValid() { $this->assertEquals( Router::$PAGE_LOGIN, Router::findPage('do=login', array(), false) ); $this->assertEquals( Router::$PAGE_LOGIN, Router::findPage('do=login', array(), 1) ); $this->assertEquals( Router::$PAGE_LOGIN, Router::findPage('do=login&stuff', array(), false) ); } /** * Test findPage: login page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageLoginInvalid() { $this->assertNotEquals( Router::$PAGE_LOGIN, Router::findPage('do=login', array(), true) ); $this->assertNotEquals( Router::$PAGE_LOGIN, Router::findPage('do=other', array(), false) ); } /** * Test findPage: picwall page output. * Valid: page should be return. * * @return void */ public function testFindPagePicwallValid() { $this->assertEquals( Router::$PAGE_PICWALL, Router::findPage('do=picwall', array(), false) ); $this->assertEquals( Router::$PAGE_PICWALL, Router::findPage('do=picwall', array(), true) ); } /** * Test findPage: picwall page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPagePicwallInvalid() { $this->assertEquals( Router::$PAGE_PICWALL, Router::findPage('do=picwall&stuff', array(), false) ); $this->assertNotEquals( Router::$PAGE_PICWALL, Router::findPage('do=other', array(), false) ); } /** * Test findPage: tagcloud page output. * Valid: page should be return. * * @return void */ public function testFindPageTagcloudValid() { $this->assertEquals( Router::$PAGE_TAGCLOUD, Router::findPage('do=tagcloud', array(), false) ); $this->assertEquals( Router::$PAGE_TAGCLOUD, Router::findPage('do=tagcloud', array(), true) ); $this->assertEquals( Router::$PAGE_TAGCLOUD, Router::findPage('do=tagcloud&stuff', array(), false) ); } /** * Test findPage: tagcloud page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageTagcloudInvalid() { $this->assertNotEquals( Router::$PAGE_TAGCLOUD, Router::findPage('do=other', array(), false) ); } /** * Test findPage: linklist page output. * Valid: page should be return. * * @return void */ public function testFindPageLinklistValid() { $this->assertEquals( Router::$PAGE_LINKLIST, Router::findPage('', array(), true) ); $this->assertEquals( Router::$PAGE_LINKLIST, Router::findPage('whatever', array(), true) ); $this->assertEquals( Router::$PAGE_LINKLIST, Router::findPage('whatever', array(), false) ); $this->assertEquals( Router::$PAGE_LINKLIST, Router::findPage('do=tools', array(), false) ); } /** * Test findPage: tools page output. * Valid: page should be return. * * @return void */ public function testFindPageToolsValid() { $this->assertEquals( Router::$PAGE_TOOLS, Router::findPage('do=tools', array(), true) ); $this->assertEquals( Router::$PAGE_TOOLS, Router::findPage('do=tools&stuff', array(), true) ); } /** * Test findPage: tools page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageToolsInvalid() { $this->assertNotEquals( Router::$PAGE_TOOLS, Router::findPage('do=tools', array(), 1) ); $this->assertNotEquals( Router::$PAGE_TOOLS, Router::findPage('do=tools', array(), false) ); $this->assertNotEquals( Router::$PAGE_TOOLS, Router::findPage('do=other', array(), true) ); } /** * Test findPage: changepasswd page output. * Valid: page should be return. * * @return void */ public function testFindPageChangepasswdValid() { $this->assertEquals( Router::$PAGE_CHANGEPASSWORD, Router::findPage('do=changepasswd', array(), true) ); $this->assertEquals( Router::$PAGE_CHANGEPASSWORD, Router::findPage('do=changepasswd&stuff', array(), true) ); } /** * Test findPage: changepasswd page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageChangepasswdInvalid() { $this->assertNotEquals( Router::$PAGE_CHANGEPASSWORD, Router::findPage('do=changepasswd', array(), 1) ); $this->assertNotEquals( Router::$PAGE_CHANGEPASSWORD, Router::findPage('do=changepasswd', array(), false) ); $this->assertNotEquals( Router::$PAGE_CHANGEPASSWORD, Router::findPage('do=other', array(), true) ); } /** * Test findPage: configure page output. * Valid: page should be return. * * @return void */ public function testFindPageConfigureValid() { $this->assertEquals( Router::$PAGE_CONFIGURE, Router::findPage('do=configure', array(), true) ); $this->assertEquals( Router::$PAGE_CONFIGURE, Router::findPage('do=configure&stuff', array(), true) ); } /** * Test findPage: configure page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageConfigureInvalid() { $this->assertNotEquals( Router::$PAGE_CONFIGURE, Router::findPage('do=configure', array(), 1) ); $this->assertNotEquals( Router::$PAGE_CONFIGURE, Router::findPage('do=configure', array(), false) ); $this->assertNotEquals( Router::$PAGE_CONFIGURE, Router::findPage('do=other', array(), true) ); } /** * Test findPage: changetag page output. * Valid: page should be return. * * @return void */ public function testFindPageChangetagValid() { $this->assertEquals( Router::$PAGE_CHANGETAG, Router::findPage('do=changetag', array(), true) ); $this->assertEquals( Router::$PAGE_CHANGETAG, Router::findPage('do=changetag&stuff', array(), true) ); } /** * Test findPage: changetag page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageChangetagInvalid() { $this->assertNotEquals( Router::$PAGE_CHANGETAG, Router::findPage('do=changetag', array(), 1) ); $this->assertNotEquals( Router::$PAGE_CHANGETAG, Router::findPage('do=changetag', array(), false) ); $this->assertNotEquals( Router::$PAGE_CHANGETAG, Router::findPage('do=other', array(), true) ); } /** * Test findPage: addlink page output. * Valid: page should be return. * * @return void */ public function testFindPageAddlinkValid() { $this->assertEquals( Router::$PAGE_ADDLINK, Router::findPage('do=addlink', array(), true) ); $this->assertEquals( Router::$PAGE_ADDLINK, Router::findPage('do=addlink&stuff', array(), true) ); } /** * Test findPage: addlink page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageAddlinkInvalid() { $this->assertNotEquals( Router::$PAGE_ADDLINK, Router::findPage('do=addlink', array(), 1) ); $this->assertNotEquals( Router::$PAGE_ADDLINK, Router::findPage('do=addlink', array(), false) ); $this->assertNotEquals( Router::$PAGE_ADDLINK, Router::findPage('do=other', array(), true) ); } /** * Test findPage: export page output. * Valid: page should be return. * * @return void */ public function testFindPageExportValid() { $this->assertEquals( Router::$PAGE_EXPORT, Router::findPage('do=export', array(), true) ); $this->assertEquals( Router::$PAGE_EXPORT, Router::findPage('do=export&stuff', array(), true) ); } /** * Test findPage: export page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageExportInvalid() { $this->assertNotEquals( Router::$PAGE_EXPORT, Router::findPage('do=export', array(), 1) ); $this->assertNotEquals( Router::$PAGE_EXPORT, Router::findPage('do=export', array(), false) ); $this->assertNotEquals( Router::$PAGE_EXPORT, Router::findPage('do=other', array(), true) ); } /** * Test findPage: import page output. * Valid: page should be return. * * @return void */ public function testFindPageImportValid() { $this->assertEquals( Router::$PAGE_IMPORT, Router::findPage('do=import', array(), true) ); $this->assertEquals( Router::$PAGE_IMPORT, Router::findPage('do=import&stuff', array(), true) ); } /** * Test findPage: import page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageImportInvalid() { $this->assertNotEquals( Router::$PAGE_IMPORT, Router::findPage('do=import', array(), 1) ); $this->assertNotEquals( Router::$PAGE_IMPORT, Router::findPage('do=import', array(), false) ); $this->assertNotEquals( Router::$PAGE_IMPORT, Router::findPage('do=other', array(), true) ); } /** * Test findPage: editlink page output. * Valid: page should be return. * * @return void */ public function testFindPageEditlinkValid() { $this->assertEquals( Router::$PAGE_EDITLINK, Router::findPage('whatever', array('edit_link' => 1), true) ); $this->assertEquals( Router::$PAGE_EDITLINK, Router::findPage('', array('edit_link' => 1), true) ); $this->assertEquals( Router::$PAGE_EDITLINK, Router::findPage('whatever', array('post' => 1), true) ); $this->assertEquals( Router::$PAGE_EDITLINK, Router::findPage('whatever', array('post' => 1, 'edit_link' => 1), true) ); } /** * Test findPage: editlink page output. * Invalid: page shouldn't be return. * * @return void */ public function testFindPageEditlinkInvalid() { $this->assertNotEquals( Router::$PAGE_EDITLINK, Router::findPage('whatever', array('edit_link' => 1), false) ); $this->assertNotEquals( Router::$PAGE_EDITLINK, Router::findPage('whatever', array('edit_link' => 1), 1) ); $this->assertNotEquals( Router::$PAGE_EDITLINK, Router::findPage('whatever', array(), true) ); } }