/** * yesterday 23:59:59 is finished * @group Core */ public function testDayIsFinishedYesterday() { $period = new Day(Date::yesterday()); $this->assertEquals(date("Y-m-d", time() - 86400), $period->toString()); $this->assertEquals(array(), $period->getSubperiods()); $this->assertEquals(0, $period->getNumberOfSubperiods()); }
public function testRangePrevious3days() { $range = new Range('day', 'previous3'); $yesterday = Date::yesterday(); $correct = array(); for ($i = 0; $i < 3; $i++) { $correct[] = $yesterday->subDay($i)->toString(); } $correct = array_reverse($correct); $this->assertEquals(3, $range->getNumberOfSubperiods()); $this->assertEquals($correct, $range->toString()); }
/** * create today object check that timestamp is correct (midnight) * * @group Core */ public function testYesterday() { $date = Date::yesterday(); $this->assertEquals(strtotime(date("Y-m-d", strtotime('-1day')) . " 00:00:00"), $date->getTimestamp()); }
$apiForTesting[] = array('VisitsSummary.get', array('idSite' => self::$fixture->idSite, 'date' => date("Y-m-d", strtotime(self::$fixture->dateTime)) . ',today', 'period' => 'range', 'testSuffix' => '_' . $segment['segment'], 'segmentToComplete' => $segment['segment'])); } return $apiForTesting; } /** * @depends testAnotherApi */ public function testCheckOtherTestsWereComplete() { // Check that only a few haven't been tested specifically (these are all custom variables slots since we only test slot 1, 2, 5 (see the fixture) and example dimension slots) $maximumSegmentsToSkip = 16; $this->assertLessThan($maximumSegmentsToSkip, count(self::$skipped), 'SKIPPED ' . count(self::$skipped) . ' segments --> some segments had no "auto-suggested values" but we should try and test the autosuggest for all new segments. Segments skipped were: ' . implode(', ', self::$skipped)); // and check that most others have been tested $minimumSegmentsToTest = 46; $message = 'PROCESSED ' . self::$processed . ' segments --> it seems some segments "auto-suggested values" haven\'t been tested as we were expecting. '; $this->assertGreaterThan($minimumSegmentsToTest, self::$processed, $message); } public static function getSegmentsMetadata($idSite) { // Refresh cache for CustomVariables\Model Cache::clearCacheGeneral(); \Piwik\Plugins\CustomVariables\Model::install(); // Segment matching NONE $segments = \Piwik\Plugins\API\API::getInstance()->getSegmentsMetadata($idSite); return $segments; } } AutoSuggestAPITest::$fixture = new ManyVisitsWithGeoIP(); AutoSuggestAPITest::$fixture->dateTime = Date::yesterday()->subDay(30)->getDatetime();
public function getAnotherApiForTesting() { $apiForTesting = array(); $segments = \Piwik\Plugins\API\API::getInstance()->getSegmentsMetadata(self::$fixture->idSite); foreach ($segments as $segment) { if (self::isTravisCI() && $segment['segment'] == 'deviceType') { // test started failing after bc19503 and I cannot understand why continue; } $apiForTesting[] = array('VisitsSummary.get', array('idSite' => self::$fixture->idSite, 'date' => date("Y-m-d", strtotime(self::$fixture->dateTime)) . ',today', 'period' => 'range', 'testSuffix' => '_' . $segment['segment'], 'segmentToComplete' => $segment['segment'])); } return $apiForTesting; } /** * @group Integration * @depends testAnotherApi */ public function testCheckOtherTestsWereComplete() { // Check that only a few haven't been tested specifically (these are all custom variables slots since we only test slot 1, 2, 5 (see the fixture)) $maximumSegmentsToSkip = 11; $this->assertTrue(count(self::$skipped) <= $maximumSegmentsToSkip, 'SKIPPED ' . count(self::$skipped) . ' segments --> some segments had no "auto-suggested values" but we should try and test the autosuggest for all new segments. Segments skipped were: ' . implode(', ', self::$skipped)); // and check that most others have been tested $minimumSegmentsToTest = 46; $this->assertTrue(self::$processed >= $minimumSegmentsToTest, 'PROCESSED ' . self::$processed . ' segments --> it seems some segments "auto-suggested values" haven\'t been tested as we were expecting'); } } Test_Piwik_Integration_AutoSuggestAPITest::$fixture = new Test_Piwik_Fixture_ManyVisitsWithGeoIP(); Test_Piwik_Integration_AutoSuggestAPITest::$fixture->dateTime = Date::yesterday()->subDay(30)->getDatetime();