/** * Runs API tests. */ protected function runApiTests($api, $params) { $testName = 'test_' . $this->getOutputPrefix(); $this->_setCallableApi($api); if (isset($params['disableArchiving']) && $params['disableArchiving'] === true) { Piwik_ArchiveProcessing::$forceDisableArchiving = true; } else { Piwik_ArchiveProcessing::$forceDisableArchiving = false; } if (isset($params['language'])) { $this->changeLanguage($params['language']); } $testSuffix = isset($params['testSuffix']) ? $params['testSuffix'] : ''; $requestUrls = $this->_generateApiUrls(isset($params['format']) ? $params['format'] : 'xml', isset($params['idSite']) ? $params['idSite'] : false, isset($params['date']) ? $params['date'] : false, isset($params['periods']) ? $params['periods'] : false, isset($params['setDateLastN']) ? $params['setDateLastN'] : false, isset($params['language']) ? $params['language'] : false, isset($params['segment']) ? $params['segment'] : false, isset($params['visitorId']) ? $params['visitorId'] : false, isset($params['abandonedCarts']) ? $params['abandonedCarts'] : false, isset($params['idGoal']) ? $params['idGoal'] : false, isset($params['apiModule']) ? $params['apiModule'] : false, isset($params['apiAction']) ? $params['apiAction'] : false, isset($params['otherRequestParameters']) ? $params['otherRequestParameters'] : array(), isset($params['supertableApi']) ? $params['supertableApi'] : false, isset($params['fileExtension']) ? $params['fileExtension'] : false); foreach ($requestUrls as $apiId => $requestUrl) { $this->_testApiUrl($testName . $testSuffix, $apiId, $requestUrl); } // change the language back to en if ($this->lastLanguage != 'en') { $this->changeLanguage('en'); } }
/** * Runs API tests. */ protected function runApiTests($api, $params) { $testName = 'test_' . $this->getOutputPrefix(); $this->missingExpectedFiles = array(); $this->comparisonFailures = array(); $this->_setCallableApi($api); if (isset($params['disableArchiving']) && $params['disableArchiving'] === true) { Piwik_ArchiveProcessing::$forceDisableArchiving = true; } else { Piwik_ArchiveProcessing::$forceDisableArchiving = false; } if (isset($params['language'])) { $this->changeLanguage($params['language']); } $testSuffix = isset($params['testSuffix']) ? $params['testSuffix'] : ''; $requestUrls = $this->_generateApiUrls(isset($params['format']) ? $params['format'] : 'xml', isset($params['idSite']) ? $params['idSite'] : false, isset($params['date']) ? $params['date'] : false, isset($params['periods']) ? $params['periods'] : false, isset($params['setDateLastN']) ? $params['setDateLastN'] : false, isset($params['language']) ? $params['language'] : false, isset($params['segment']) ? $params['segment'] : false, isset($params['visitorId']) ? $params['visitorId'] : false, isset($params['abandonedCarts']) ? $params['abandonedCarts'] : false, isset($params['idGoal']) ? $params['idGoal'] : false, isset($params['apiModule']) ? $params['apiModule'] : false, isset($params['apiAction']) ? $params['apiAction'] : false, isset($params['otherRequestParameters']) ? $params['otherRequestParameters'] : array(), isset($params['supertableApi']) ? $params['supertableApi'] : false, isset($params['fileExtension']) ? $params['fileExtension'] : false); foreach ($requestUrls as $apiId => $requestUrl) { $this->_testApiUrl($testName . $testSuffix, $apiId, $requestUrl); } // change the language back to en if ($this->lastLanguage != 'en') { $this->changeLanguage('en'); } if (!empty($this->missingExpectedFiles)) { $expectedDir = dirname(reset($this->missingExpectedFiles)); $this->markTestIncomplete(" ERROR: Could not find expected API output '" . implode("', '", $this->missingExpectedFiles) . "'. For new tests, to pass the test, you can copy files from the processed/ directory into" . " {$expectedDir} after checking that the output is valid. %s "); } if (!empty($this->comparisonFailures)) { throw reset($this->comparisonFailures); } }
/** * Runs API tests. */ private function runApiTests() { $apiToTest = $this->getApiToTest(); $testName = 'test_' . $this->getOutputPrefix(); foreach ($apiToTest as $test) { list($api, $params) = $test; if ($api == 'all') { $this->setApiToCall(array()); $this->setApiNotToCall(Test_Integration::$defaultApiNotToCall); } else { if (!is_array($api)) { $api = array($api); } $this->setApiToCall($api); $this->setApiNotToCall(array()); } if (isset($params['disableArchiving']) && $params['disableArchiving'] === true) { Piwik_ArchiveProcessing::$forceDisableArchiving = true; } else { Piwik_ArchiveProcessing::$forceDisableArchiving = false; } if (isset($params['language'])) { $this->changeLanguage($params['language']); } $testSuffix = isset($params['testSuffix']) ? $params['testSuffix'] : ''; $this->callGetApiCompareOutput($testName . $testSuffix, isset($params['format']) ? $params['format'] : 'xml', isset($params['idSite']) ? $params['idSite'] : false, isset($params['date']) ? $params['date'] : false, isset($params['periods']) ? $params['periods'] : false, isset($params['setDateLastN']) ? $params['setDateLastN'] : false, isset($params['language']) ? $params['language'] : false, isset($params['segment']) ? $params['segment'] : false, isset($params['visitorId']) ? $params['visitorId'] : false, isset($params['abandonedCarts']) ? $params['abandonedCarts'] : false, isset($params['idGoal']) ? $params['idGoal'] : false, isset($params['apiModule']) ? $params['apiModule'] : false, isset($params['apiAction']) ? $params['apiAction'] : false, isset($params['otherRequestParameters']) ? $params['otherRequestParameters'] : array()); // change the language back to en if ($this->lastLanguage != 'en') { $this->changeLanguage('en'); } } }