sitesmanager.test.php
来自「一款可以和GOOGLE媲美的开源统计系统,运用AJAX.功能强大. 无色提示:」· PHP 代码 · 共 692 行 · 第 1/2 页
PHP
692 行
<?phpif(!defined("PATH_TEST_TO_ROOT")) { define('PATH_TEST_TO_ROOT', getcwd().'/../../');}if(!defined('CONFIG_TEST_INCLUDED')){ require_once PATH_TEST_TO_ROOT."tests/config_test.php";}require_once "Database.test.php";require_once 'SitesManager/API.php';class Test_Piwik_SitesManager extends Test_Database{ public function setUp() { parent::setUp(); // setup the access layer $pseudoMockAccess = new FakeAccess; FakeAccess::$superUser = true; Zend_Registry::set('access', $pseudoMockAccess); } /** * empty name -> exception */ public function test_addSite_emptyName() { try { Piwik_SitesManager_API::addSite("",array("http://piwik.net")); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * no urls -> exception */ public function test_addSite_noUrls() { try { Piwik_SitesManager_API::addSite("name",array()); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * wrong urls -> exception */ public function test_addSite_wrongUrls1() { try { Piwik_SitesManager_API::addSite("name",array("")); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * wrong urls -> exception */ public function test_addSite_wrongUrls2() { try { Piwik_SitesManager_API::addSite("name",""); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * wrong urls -> exception */ public function test_addSite_wrongUrls3() { try { Piwik_SitesManager_API::addSite("name","httpww://piwik.net"); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * wrong urls -> exception */ public function test_addSite_wrongUrls4() { try { Piwik_SitesManager_API::addSite("name","httpww://piwik.net/gqg~#"); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * one url -> one main_url and nothing inserted as alias urls */ public function test_addSite_oneUrl() { $url = "http://piwik.net/"; $urlOK = "http://piwik.net"; $idsite = Piwik_SitesManager_API::addSite("name",$url); $this->assertIsA( $idsite,'int'); $siteInfo = Piwik_SitesManager_API::getSiteFromId($idsite); $this->assertEqual($siteInfo['main_url'], $urlOK); $siteUrls = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $this->assertTrue(count($siteUrls)===1); } /** * several urls -> one main_url and others as alias urls */ public function test_addSite_severalUrls() { $urls = array("http://piwik.net/","http://piwik.com","https://piwik.net/test/"); $urlsOK = array("http://piwik.net","http://piwik.com","https://piwik.net/test"); $idsite = Piwik_SitesManager_API::addSite("super website",$urls); $this->assertIsA( $idsite,'int'); $siteInfo = Piwik_SitesManager_API::getSiteFromId($idsite); $this->assertEqual($siteInfo['main_url'], $urlsOK[0]); $siteUrls = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $this->assertEqual($siteUrls, $urlsOK); } /** * strange name */ public function test_addSite_strangeName() { $name = "supertest(); ~@@()''!拢\$'%%^'!拢"; $idsite = Piwik_SitesManager_API::addSite($name,"http://piwik.net"); $this->assertIsA( $idsite,'int'); $siteInfo = Piwik_SitesManager_API::getSiteFromId($idsite); $this->assertEqual($siteInfo['name'], $name); } /** * normal case */ public function test_addSite() { $name = "website "; $idsite = Piwik_SitesManager_API::addSite($name,array("http://piwik.net","http://piwik.com/test/")); $this->assertIsA( $idsite,'int'); $siteInfo = Piwik_SitesManager_API::getSiteFromId($idsite); $this->assertEqual($siteInfo['name'], $name); $this->assertEqual($siteInfo['main_url'], "http://piwik.net"); $siteUrls = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $this->assertEqual($siteUrls, array("http://piwik.net","http://piwik.com/test")); return $idsite; } /** * no duplicate -> all the urls are saved */ public function test_addSiteUrls_noDuplicate() { $idsite = $this->test_addSite(); $siteUrlsBefore = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $toAdd = array( "http://piwik1.net", "http://piwik2.net", "http://piwik3.net/test/", "http://localhost/test", "http://localho5.st/test", "http://l42578gqege.f4", "http://super.com/test/test/atqata675675/te" ); $toAddValid = array("http://piwik1.net", "http://piwik2.net", "http://piwik3.net/test", "http://localhost/test", "http://localho5.st/test", "http://l42578gqege.f4", "http://super.com/test/test/atqata675675/te"); $insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls($idsite, $toAdd); $this->assertEqual($insertedUrls, count($toAdd)); $siteUrlsAfter = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $shouldHave = array_merge($siteUrlsBefore, $toAddValid); sort($shouldHave); sort($siteUrlsAfter); $this->assertEqual($shouldHave, $siteUrlsAfter); } /** * duplicate -> don't save the already existing URLs */ public function test_addSiteUrls_duplicate() { $idsite = $this->test_addSite(); $siteUrlsBefore = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $toAdd = array_merge($siteUrlsBefore, array("http://piwik1.net","http://piwik2.net")); $insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls($idsite, $toAdd); $this->assertEqual($insertedUrls, count($toAdd) - count($siteUrlsBefore)); $siteUrlsAfter = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $shouldHave = $toAdd; sort($shouldHave); sort($siteUrlsAfter); $this->assertEqual($shouldHave, $siteUrlsAfter); } /** * case empty array => nothing happens */ public function test_addSiteUrls_noUrlsToAdd1() { $idsite = $this->test_addSite(); $siteUrlsBefore = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $toAdd = array(); $insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls($idsite, $toAdd); $this->assertEqual($insertedUrls, count($toAdd)); $siteUrlsAfter = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $shouldHave = $siteUrlsBefore; sort($shouldHave); sort($siteUrlsAfter); $this->assertEqual($shouldHave, $siteUrlsAfter); } /** * case array only duplicate => nothing happens */ public function test_addSiteUrls_noUrlsToAdd2() { $idsite = $this->test_addSite(); $siteUrlsBefore = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $toAdd = $siteUrlsBefore; $insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls($idsite, $toAdd); $this->assertEqual($insertedUrls, 0); $siteUrlsAfter = Piwik_SitesManager_API::getSiteUrlsFromId($idsite); $shouldHave = $siteUrlsBefore; sort($shouldHave); sort($siteUrlsAfter); $this->assertEqual($shouldHave, $siteUrlsAfter); } /** * wrong format urls => exception */ public function test_addSiteUrls_wrongUrlsFormat1() { $idsite = $this->test_addSite(); $toAdd = array("http://pi''.com"); try { $insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls($idsite, $toAdd); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * wrong format urls => exception */ public function test_addSiteUrls_wrongUrlsFormat2() { $idsite = $this->test_addSite(); $toAdd = array("http://pi^.com"); try { $insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls($idsite, $toAdd); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * wrong format urls => exception */ public function test_addSiteUrls_wrongUrlsFormat3() { $idsite = $this->test_addSite(); $toAdd = array("http://pigeq.com/test{}"); try { $insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls($idsite, $toAdd); } catch (Exception $expected) { return; } $this->fail("Exception not raised."); } /** * wrong idsite => no exception because simply no access to this resource */ public function test_addSiteUrls_wrongIdSite1() { $toAdd = array("http://pigeq.com/test");
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?