예제 #1
0
 /**
  * @dataProvider getUnitColumns
  * @group Core
  */
 public function testGetUnit($column, $expected)
 {
     Site::setSites(array(1 => array('name' => 'TestSite', 'currency' => 'EUR')));
     FakeAccess::$superUser = true;
     $actual = Metrics::getUnit($column, 1);
     $this->assertEquals($expected, $actual);
 }
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::$superUser = true;
     ArchiveTableCreator::$tablesAlreadyInstalled = null;
 }
예제 #3
0
 protected function setUser()
 {
     FakeAccess::$superUser = false;
     FakeAccess::$idSitesAdmin = array();
     FakeAccess::$idSitesView = array(99);
     FakeAccess::$identity = 'aUser';
 }
예제 #4
0
 public function setUp()
 {
     parent::setUp();
     FakeAccess::$superUser = true;
     $idSite = Fixture::createWebsite('2014-01-01 00:00:00');
     $this->builder = $this->makeBuilder(array('method' => 'MultiSites_getAll', 'idSite' => $idSite));
 }
예제 #5
0
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::$superUser = true;
     Fixture::createWebsite('2015-01-01 00:00:00');
 }
예제 #6
0
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::$superUser = true;
     $this->manager = new SitesManager();
     $this->siteId = Fixture::createWebsite('2014-03-03 00:00:00');
 }
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::$superUser = true;
     for ($i = 0; $i < $this->site2; $i++) {
         Fixture::createWebsite('2015-01-01 00:00:00');
     }
 }
예제 #8
0
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::$superUser = true;
     Manager::getInstance()->loadTrackerPlugins();
     Manager::getInstance()->loadPlugin('SitesManager');
     Visit::$dimensions = null;
 }
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::$superUser = true;
     $this->idSiteAccess = APISitesManager::getInstance()->addSite("test", "http://test");
     \Piwik\Plugin\Manager::getInstance()->loadPlugins(array('ScheduledReports', 'MobileMessaging', 'MultiSites'));
     \Piwik\Plugin\Manager::getInstance()->installLoadedPlugins();
 }
예제 #10
0
 public function setUp()
 {
     parent::setUp();
     $this->api = API::getInstance();
     FakeAccess::$superUser = true;
     Fixture::createWebsite('2014-01-01 00:00:00');
     Fixture::createWebsite('2014-01-01 00:00:00');
     Fixture::createWebsite('2014-01-01 00:00:00');
     $this->api->addUser($this->login, 'password', '*****@*****.**');
 }
예제 #11
0
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::setIdSitesView(array(1, 2));
     FakeAccess::setIdSitesAdmin(array(3, 4));
     //finally we set the user as a Super User by default
     FakeAccess::$superUser = true;
     $this->auth = new Auth();
 }
예제 #12
0
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::setIdSitesView(array(1, 2));
     FakeAccess::setIdSitesAdmin(array(3, 4));
     //finally we set the user as a Super User by default
     FakeAccess::$superUser = true;
     $user_agents = array('Mozilla/6.0 (Macintosh; I; Intel Mac OS X 11_7_9; de-LI; rv:1.9b4) Gecko/2012010317 Firefox/10.0a4', 'Mozilla/5.0 (compatible; MSIE 10.6; Windows NT 6.1; Trident/5.0; InfoPath.2; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 2.0.50727) 3gpp-gba UNTRUSTED/1.0', 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/18.6.872.0 Safari/535.2 UNTRUSTED/1.0 3gpp-gba UNTRUSTED/1.0', 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; de-at) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1');
     $_SERVER['HTTP_USER_AGENT'] = $user_agents[mt_rand(0, count($user_agents) - 1)];
 }
 public function setUp()
 {
     parent::setUp();
     FakeAccess::$superUser = true;
     Plugin\Manager::getInstance()->activatePlugin('MobileAppMeasurable');
     if (!Fixture::siteCreated($this->idSite)) {
         $type = MobileAppType::ID;
         Fixture::createWebsite('2015-01-01 00:00:00', $ecommerce = 0, $siteName = false, $siteUrl = false, $siteSearch = 1, $searchKeywordParameters = null, $searchCategoryParameters = null, $timezone = null, $type);
     }
     $this->settings = $this->createSettings();
 }
 public function setUp()
 {
     parent::setUp();
     // setup the access layer
     FakeAccess::setIdSitesView(array(1, 2));
     FakeAccess::setIdSitesAdmin(array(3, 4));
     //finally we set the user as a Super User by default
     FakeAccess::$superUser = true;
     $this->auth = new Auth();
     $ga = new GoogleAuthenticator();
     $this->secret = $ga->createSecret(32);
 }
예제 #15
0
 public function setUp()
 {
     parent::setUp();
     \Piwik\Plugin\Manager::getInstance()->loadPlugin('SegmentEditor');
     \Piwik\Plugin\Manager::getInstance()->installLoadedPlugins();
     // setup the access layer
     FakeAccess::setIdSitesView(array(1, 2));
     FakeAccess::setIdSitesAdmin(array(3, 4));
     //finally we set the user as a Super User by default
     FakeAccess::$superUser = true;
     FakeAccess::$superUserLogin = '******';
     APISitesManager::getInstance()->addSite('test', 'http://example.org');
 }
예제 #16
0
 public function test_getSitesIdFromSiteUrl_asUser()
 {
     API::getInstance()->addSite("site1", array("http://www.piwik.net", "https://piwik.com"));
     API::getInstance()->addSite("site2", array("http://piwik.com", "http://piwik.net"));
     API::getInstance()->addSite("site3", array("http://piwik.com", "http://piwik.org"));
     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));
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user1';
     FakeAccess::setIdSitesView(array(1));
     FakeAccess::setIdSitesAdmin(array());
     $this->assertFalse(Piwik::hasUserSuperUserAccess());
     $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));
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user2';
     FakeAccess::setIdSitesView(array(1));
     FakeAccess::setIdSitesAdmin(array(3));
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertEquals(2, count($idsites));
     FakeAccess::$superUser = false;
     FakeAccess::$identity = 'user3';
     FakeAccess::setIdSitesView(array(1, 2));
     FakeAccess::setIdSitesAdmin(array(3));
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('http://piwik.com');
     $this->assertEquals(3, count($idsites));
     $idsites = API::getInstance()->getSitesIdFromSiteUrl('https://www.piwik.com');
     $this->assertEquals(3, count($idsites));
 }
예제 #17
0
        return $previous;
    }
}), 'Piwik\\Config' => DI\decorate(function ($previous, ContainerInterface $c) {
    $testingEnvironment = $c->get('Piwik\\Tests\\Framework\\TestingEnvironmentVariables');
    $dontUseTestConfig = $c->get('test.vars.dontUseTestConfig');
    if (!$dontUseTestConfig) {
        $settingsProvider = $c->get('Piwik\\Application\\Kernel\\GlobalSettingsProvider');
        return new TestConfig($settingsProvider, $testingEnvironment, $allowSave = false, $doSetTestEnvironment = true);
    } else {
        return $previous;
    }
}), 'Piwik\\Access' => DI\decorate(function ($previous, ContainerInterface $c) {
    $testUseMockAuth = $c->get('test.vars.testUseMockAuth');
    if ($testUseMockAuth) {
        $access = new FakeAccess();
        FakeAccess::$superUser = true;
        FakeAccess::$superUserLogin = '******';
        return $access;
    } else {
        return $previous;
    }
}), 'observers.global' => DI\add(array(array('AssetManager.getStylesheetFiles', function (&$stylesheets) {
    $useOverrideCss = \Piwik\Container\StaticContainer::get('test.vars.useOverrideCss');
    if ($useOverrideCss) {
        $stylesheets[] = 'tests/resources/screenshot-override/override.css';
    }
}), array('AssetManager.getJavaScriptFiles', function (&$jsFiles) {
    $useOverrideJs = \Piwik\Container\StaticContainer::get('test.vars.useOverrideJs');
    if ($useOverrideJs) {
        $jsFiles[] = 'tests/resources/screenshot-override/override.js';
    }
예제 #18
0
 private function setSuperUser()
 {
     FakeAccess::$superUser = true;
     FakeAccess::$superUserLogin = '******';
     $this->createSettings();
 }
예제 #19
0
 protected function setSuperUser()
 {
     FakeAccess::$superUser = true;
 }
예제 #20
0
 private function setSuperUser()
 {
     FakeAccess::$superUser = true;
 }
예제 #21
0
 /**
  * check to modify as being another user => exception
  *
  * @expectedException \Exception
  */
 public function testUpdateUserIAmNotTheUser()
 {
     FakeAccess::$identity = 'login2';
     FakeAccess::$superUser = false;
     $this->testUpdateUserNoEmailNoAlias();
 }
예제 #22
0
 /**
  * @dataProvider getPermissionsFailData
  */
 public function testMethodPermissions($hasAdminAccess, $hasViewAccess, $request, $checkException, $failMessage)
 {
     // create fake access that denies user access
     FakeAccess::$superUser = false;
     FakeAccess::$idSitesAdmin = $hasAdminAccess ? array(self::$fixture->idSite1) : array();
     FakeAccess::$idSitesView = $hasViewAccess ? array(self::$fixture->idSite1) : array();
     if ($checkException) {
         try {
             $request = new Request($request);
             $request->process();
             $this->fail($failMessage);
         } catch (Exception $ex) {
             // pass
         }
     } else {
         $request = new Request($request);
         $request->process();
     }
 }
 public function setUp()
 {
     parent::setUp();
     FakeAccess::$superUser = true;
 }
예제 #24
0
 public function testIsDefined()
 {
     // setup the access layer
     FakeAccess::$superUser = true;
     Translate::loadAllTranslations();
     Fixture::createWebsite('2009-01-04 00:11:42', true);
     $_GET['idSite'] = 1;
     WidgetsList::_reset();
     WidgetsList::add('Actions', 'Pages', 'Actions', 'getPageUrls');
     $this->assertTrue(WidgetsList::isDefined('Actions', 'getPageUrls'));
     $this->assertFalse(WidgetsList::isDefined('Actions', 'inValiD'));
     Translate::reset();
 }
 public function setUp()
 {
     parent::setUp();
     // setup the access layer (required in Segment contrustor testing if anonymous is allowed to use segments)
     FakeAccess::$superUser = true;
 }
 private function setIdentity($login)
 {
     FakeAccess::$identity = $login;
     FakeAccess::$superUser = true;
 }