sitesmanager.test.php

来自「一款可以和GOOGLE媲美的开源统计系统,运用AJAX.功能强大. 无色提示:」· PHP 代码 · 共 692 行 · 第 1/2 页

PHP
692
字号
    	try {    		$insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls(-1, $toAdd);    	}    	catch (Exception $expected) {            return;        }        $this->fail("Exception not raised.");    }        /**     * wrong idsite => exception     */    public function test_addSiteUrls_wrongIdSite2()    {    	$toAdd = array("http://pigeq.com/test");    	    	try {    		$insertedUrls = Piwik_SitesManager_API::addSiteAliasUrls(155, $toAdd);    	}    	catch (Exception $expected) {            return;        }        $this->fail("Exception not raised.");    }        /**     * no Id -> empty array     */    function test_getAllSitesId_noId()    {    	$ids = Piwik_SitesManager_API::getAllSitesId();    	$this->assertEqual(array(),$ids);    }        /**     * several Id -> normal array     */    function test_getAllSitesId_severalId()    {    	$name="tetq";    	$idsites = array(    				Piwik_SitesManager_API::addSite($name,array("http://piwik.net","http://piwik.com/test/")),    				Piwik_SitesManager_API::addSite($name,array("http://piwik.net","http://piwik.com/test/")),    				Piwik_SitesManager_API::addSite($name,array("http://piwik.net","http://piwik.com/test/")),    				Piwik_SitesManager_API::addSite($name,array("http://piwik.net","http://piwik.com/test/")),    				Piwik_SitesManager_API::addSite($name,array("http://piwik.net","http://piwik.com/test/")),    		);    	    	$ids = Piwik_SitesManager_API::getAllSitesId();    	$this->assertEqual($idsites,$ids);    }        /**     * wrong id => exception     */    function test_getSiteFromId_wrongId1()    {    	    	try {    		$siteInfo = Piwik_SitesManager_API::getSiteFromId(0);    	}    	catch (Exception $expected) {            return;        }        $this->fail("Exception not raised.");    	    }    /**     * wrong id => exception     */    function test_getSiteFromId_wrongId2()    {    	    	try {    		$siteInfo = Piwik_SitesManager_API::getSiteFromId("x1");    	}    	catch (Exception $expected) {            return;        }        $this->fail("Exception not raised.");    	    }    /**     * wrong id : no access => exception     */    function test_getSiteFromId_wrongId3()    {    	$idsite = Piwik_SitesManager_API::addSite("site",array("http://piwik.net","http://piwik.com/test/"));    	$this->assertEqual($idsite,1);    	    	// set noaccess to site 1		FakeAccess::setIdSitesView (array(2));		FakeAccess::setIdSitesAdmin (array());    	    	try {    		$siteInfo = Piwik_SitesManager_API::getSiteFromId(1);    	}    	catch (Exception $expected) {            return;        }        $this->fail("Exception not raised.");    	    }    /**     * normal case     */    function test_getSiteFromId_normalId()    {    	$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");    }            /**     * there is no admin site available -> array()     */    function test_getSitesWithAdminAccess_noResult()    {		FakeAccess::setIdSitesAdmin (array());    	    	$sites = Piwik_SitesManager_API::getSitesWithAdminAccess();    	$this->assertEqual($sites, array());    }        /**     * normal case, admin and view and noaccess website => return only admin     */    function test_getSitesWithAdminAccess()    {    	$idsite = Piwik_SitesManager_API::addSite("site1",array("http://piwik.net","http://piwik.com/test/"));    	$idsite = Piwik_SitesManager_API::addSite("site2",array("http://piwik.com/test/"));    	$idsite = Piwik_SitesManager_API::addSite("site3",array("http://piwik.org"));    	    	$resultWanted = array(    		0 => array("idsite" => 1, "name" => "site1", "main_url" =>"http://piwik.net"),    		1 => array("idsite" => 3, "name" => "site3", "main_url" =>"http://piwik.org"),    	);    				FakeAccess::setIdSitesAdmin (array(1,3));		    	$sites = Piwik_SitesManager_API::getSitesWithAdminAccess();    	    	// we dont test the ts_created    	unset($sites[0]['ts_created']);    	unset($sites[1]['ts_created']);    	$this->assertEqual($sites, $resultWanted);    }        /**     * there is no admin site available -> array()     */    function test_getSitesWithViewAccess_noResult()    {		FakeAccess::setIdSitesView (array());		FakeAccess::setIdSitesAdmin (array());    	    	$sites = Piwik_SitesManager_API::getSitesWithViewAccess();    	$this->assertEqual($sites, array());    }        /**     * normal case, admin and view and noaccess website => return only admin     */    function test_getSitesWithViewAccess()    {    	$idsite = Piwik_SitesManager_API::addSite("site1",array("http://piwik.net","http://piwik.com/test/"));    	$idsite = Piwik_SitesManager_API::addSite("site2",array("http://piwik.com/test/"));    	$idsite = Piwik_SitesManager_API::addSite("site3",array("http://piwik.org"));    	    	$resultWanted = array(    		0 => array("idsite" => 1, "name" => "site1", "main_url" =>"http://piwik.net"),    		1 => array("idsite" => 3, "name" => "site3", "main_url" =>"http://piwik.org"),    	);    				FakeAccess::setIdSitesView (array(1,3));		FakeAccess::setIdSitesAdmin (array());    	    	$sites = Piwik_SitesManager_API::getSitesWithViewAccess();    	// we dont test the ts_created    	unset($sites[0]['ts_created']);    	unset($sites[1]['ts_created']);    	$this->assertEqual($sites, $resultWanted);    }        /**     * there is no admin site available -> array()     */    function test_getSitesWithAtLeastViewAccess_noResult()    {		FakeAccess::setIdSitesView (array());		FakeAccess::setIdSitesAdmin (array());    	    	$sites = Piwik_SitesManager_API::getSitesWithAtLeastViewAccess();    	$this->assertEqual($sites, array());    }        /**     * normal case, admin and view and noaccess website => return only admin     */    function test_getSitesWithAtLeastViewAccess()    {    	$idsite = Piwik_SitesManager_API::addSite("site1",array("http://piwik.net","http://piwik.com/test/"));    	$idsite = Piwik_SitesManager_API::addSite("site2",array("http://piwik.com/test/"));    	$idsite = Piwik_SitesManager_API::addSite("site3",array("http://piwik.org"));    	    	$resultWanted = array(    		0 => array("idsite" => 1, "name" => "site1", "main_url" =>"http://piwik.net"),    		1 => array("idsite" => 3, "name" => "site3", "main_url" =>"http://piwik.org"),    	);    				FakeAccess::setIdSitesView (array(1,3));		FakeAccess::setIdSitesAdmin (array());    	    	$sites = Piwik_SitesManager_API::getSitesWithAtLeastViewAccess();    	// we dont test the ts_created    	unset($sites[0]['ts_created']);    	unset($sites[1]['ts_created']);    	$this->assertEqual($sites, $resultWanted);    }            /**     * no urls for this site => array()     */    function test_getSiteUrlsFromId_noUrls()    {    	$idsite = Piwik_SitesManager_API::addSite("site1",array("http://piwik.net"));    	    	$urls = Piwik_SitesManager_API::getSiteUrlsFromId($idsite);    	$this->assertEqual(array("http://piwik.net"),$urls);    }        /**     * normal case     */    function test_getSiteUrlsFromId_manyUrls()    {    	$site = array("http://piwik.net",						"http://piwik.org",							"http://piwik.org",							"http://piwik.com");		sort($site);		    	$idsite = Piwik_SitesManager_API::addSite("site1",$site);    	    	$siteWanted = array("http://piwik.net",						"http://piwik.org",							"http://piwik.com");		sort($siteWanted);    	$urls = Piwik_SitesManager_API::getSiteUrlsFromId($idsite);    	    	    	$this->assertEqual($siteWanted, $urls);    }        /**     * wrongId => exception     */    function test_getSiteUrlsFromId_wrongId()    {		FakeAccess::setIdSitesView (array(3));		FakeAccess::setIdSitesAdmin (array());    	    	try {    		Piwik_SitesManager_API::getSiteUrlsFromId(1);    	}    	catch (Exception $expected) {            return;        }        $this->fail("Exception not raised.");    }        /**     * one url => no change to alias urls     */    function test_updateSite_oneUrl()    {    	$urls = array("http://piwiknew.com",						"http://piwiknew.net",						"http://piwiknew.org",						"http://piwiknew.fr");    	$idsite = Piwik_SitesManager_API::addSite("site1",$urls);    	    	$newMainUrl = "http://main.url";    	Piwik_SitesManager_API::updateSite($idsite, "test toto@{}", $newMainUrl );    	    	$allUrls = Piwik_SitesManager_API::getSiteUrlsFromId($idsite);    	    	$this->assertEqual($allUrls[0], $newMainUrl);    	$aliasUrls = array_slice($allUrls,1);    	$this->assertEqual($aliasUrls,array());    }        /**     * strange name and NO URL => name ok, main_url not updated     */    function test_updateSite_strangeNameNoUrl()    {    	$idsite = Piwik_SitesManager_API::addSite("site1","http://main.url");    	$newName ="test toto@{'786'}";    	    	Piwik_SitesManager_API::updateSite($idsite, $newName );    	    	$site = Piwik_SitesManager_API::getSiteFromId($idsite);    	    	$this->assertEqual($site['name'],$newName);    	// url didn't change because parameter url NULL in updateSite    	$this->assertEqual($site['main_url'],"http://main.url");    	    	$this->assertEqual(count(null),0);    	    }        /**     * several urls => both main and alias are updated     */    function test_updateSite_severalUrls()    {    	$urls = array("http://piwiknew.com",						"http://piwiknew.net",						"http://piwiknew.org",						"http://piwiknew.fr");    	$idsite = Piwik_SitesManager_API::addSite("site1",$urls);    	    	$newurls = array("http://piwiknew2.com",						"http://piwiknew2.net",						"http://piwiknew2.org",						"http://piwiknew2.fr");    	Piwik_SitesManager_API::updateSite($idsite, "test toto@{}",$newurls );    	    	$allUrls = Piwik_SitesManager_API::getSiteUrlsFromId($idsite);    	sort($allUrls);    	sort($newurls);    	    	$this->assertEqual($allUrls,$newurls);    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?