示例#1
0
 public function __construct()
 {
     self::$superUser = false;
     self::$idSitesAdmin = array();
     self::$idSitesView = array();
     self::$identity = 'superUserLogin';
 }
 /**
  * @group Plugins
  */
 public function testGetTopMenuTranslationKeyUserIsAnonymous()
 {
     $anonymousAccess = new FakeAccess();
     FakeAccess::$identity = 'anonymous';
     Access::setSingletonInstance($anonymousAccess);
     $pdfReportPlugin = new Menu();
     $this->assertEquals(Menu::MOBILE_MESSAGING_TOP_MENU_TRANSLATION_KEY, $pdfReportPlugin->getTopMenuTranslationKey());
 }
示例#3
0
 /**
  * check to modify as being another user => exception
  */
 function test_updateUser_IAmNOTTheUser()
 {
     FakeAccess::$identity = 'login2';
     FakeAccess::$superUser = false;
     try {
         $this->test_updateUser_noemailnoalias();
     } catch (Exception $expected) {
         return;
     }
     $this->fail("Exception not raised.");
 }
示例#4
0
 function test_getSitesIdFromSiteUrl_User()
 {
     $idsite = Piwik_SitesManager_API::getInstance()->addSite("site1", array("http://www.piwik.net", "http://piwik.com"));
     $idsite = Piwik_SitesManager_API::getInstance()->addSite("site2", array("http://piwik.com", "http://piwik.net"));
     $idsite = Piwik_SitesManager_API::getInstance()->addSite("site3", array("http://piwik.com", "http://piwik.org"));
     $saveAccess = Zend_Registry::get('access');
     Piwik_UsersManager_API::getInstance()->addUser("user1", "geqgegagae", "*****@*****.**", "alias");
     Piwik_UsersManager_API::getInstance()->setUserAccess("user1", "view", array(1));
     Piwik_UsersManager_API::getInstance()->addUser("user2", "geqgegagae", "*****@*****.**", "alias");
     Piwik_UsersManager_API::getInstance()->setUserAccess("user2", "view", array(1));
     Piwik_UsersManager_API::getInstance()->setUserAccess("user2", "admin", array(3));
     Piwik_UsersManager_API::getInstance()->addUser("user3", "geqgegagae", "*****@*****.**", "alias");
     Piwik_UsersManager_API::getInstance()->setUserAccess("user3", "view", array(1, 2));
     Piwik_UsersManager_API::getInstance()->setUserAccess("user3", "admin", array(3));
     $pseudoMockAccess = new FakeAccess();
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user1';
     FakeAccess::setIdSitesView(array(1));
     FakeAccess::setIdSitesAdmin(array());
     Zend_Registry::set('access', $pseudoMockAccess);
     $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertTrue(count($idsites) == 1);
     // testing URL normalization
     $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://www.piwik.com');
     $this->assertTrue(count($idsites) == 1);
     $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.net');
     $this->assertTrue(count($idsites) == 1);
     $pseudoMockAccess = new FakeAccess();
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user2';
     FakeAccess::setIdSitesView(array(1));
     FakeAccess::setIdSitesAdmin(array(3));
     Zend_Registry::set('access', $pseudoMockAccess);
     $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertTrue(count($idsites) == 2);
     $pseudoMockAccess = new FakeAccess();
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user3';
     FakeAccess::setIdSitesView(array(1, 2));
     FakeAccess::setIdSitesAdmin(array(3));
     Zend_Registry::set('access', $pseudoMockAccess);
     $idsites = Piwik_SitesManager_API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertTrue(count($idsites) == 3);
     Zend_Registry::set('access', $saveAccess);
 }
示例#5
0
 /**
  * check to modify as being another user => exception
  * 
  * @group Plugins
  * @group UsersManager
  */
 public function testUpdateUserIAmNotTheUser()
 {
     try {
         FakeAccess::$identity = 'login2';
         FakeAccess::$superUser = false;
         $this->testUpdateUserNoEmailNoAlias();
     } catch (Exception $e) {
         return;
     }
     $this->fail('Expected exception not raised');
 }
示例#6
0
 /**
  * @group Plugins
  */
 public function testGetSitesIdFromSiteUrlUser()
 {
     $idsite = API::getInstance()->addSite("site1", array("http://www.piwik.net", "http://piwik.com"));
     $idsite = API::getInstance()->addSite("site2", array("http://piwik.com", "http://piwik.net"));
     $idsite = API::getInstance()->addSite("site3", array("http://piwik.com", "http://piwik.org"));
     $saveAccess = Access::getInstance();
     APIUsersManager::getInstance()->addUser("user1", "geqgegagae", "*****@*****.**", "alias");
     APIUsersManager::getInstance()->setUserAccess("user1", "view", array(1));
     APIUsersManager::getInstance()->addUser("user2", "geqgegagae", "*****@*****.**", "alias");
     APIUsersManager::getInstance()->setUserAccess("user2", "view", array(1));
     APIUsersManager::getInstance()->setUserAccess("user2", "admin", array(3));
     APIUsersManager::getInstance()->addUser("user3", "geqgegagae", "*****@*****.**", "alias");
     APIUsersManager::getInstance()->setUserAccess("user3", "view", array(1, 2));
     APIUsersManager::getInstance()->setUserAccess("user3", "admin", array(3));
     $pseudoMockAccess = new FakeAccess();
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user1';
     FakeAccess::setIdSitesView(array(1));
     FakeAccess::setIdSitesAdmin(array());
     Access::setSingletonInstance($pseudoMockAccess);
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertEquals(1, count($idsites));
     // testing URL normalization
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('http://www.piwik.com');
     $this->assertEquals(1, count($idsites));
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('http://piwik.net');
     $this->assertEquals(1, count($idsites));
     $pseudoMockAccess = new FakeAccess();
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user2';
     FakeAccess::setIdSitesView(array(1));
     FakeAccess::setIdSitesAdmin(array(3));
     Access::setSingletonInstance($pseudoMockAccess);
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertEquals(2, count($idsites));
     $pseudoMockAccess = new FakeAccess();
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user3';
     FakeAccess::setIdSitesView(array(1, 2));
     FakeAccess::setIdSitesAdmin(array(3));
     Access::setSingletonInstance($pseudoMockAccess);
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertEquals(3, count($idsites));
     Access::setSingletonInstance($saveAccess);
 }
示例#7
0
 protected function setNonAdminUser()
 {
     $pseudoMockAccess = new \FakeAccess();
     \FakeAccess::setSuperUserAccess(false);
     \FakeAccess::$idSitesView = array(99);
     \FakeAccess::$identity = 'aUser';
     Access::setSingletonInstance($pseudoMockAccess);
 }
示例#8
0
 /**
  * check to modify as being another user => exception
  *
  * @expectedException \Exception
  */
 public function testUpdateUserIAmNotTheUser()
 {
     FakeAccess::$identity = 'login2';
     FakeAccess::$superUser = false;
     $this->testUpdateUserNoEmailNoAlias();
 }