idSite; $dateTime = self::$fixture->dateTime; $xmlFieldsToRemove = []; if (version_compare(Version::VERSION, '5.4.0-b4', '<')) { // the fixture used from core changed, so this metric might differ for older versions $xmlFieldsToRemove = ['sum_visit_length', 'avg_time_on_site']; } $apiToCall = array('VisitsSummary.get', 'CustomVariables.getCustomVariables'); $return = array( array($apiToCall, array('idSite' => 'all', 'date' => $dateTime, 'periods' => array('day', 'week'), 'xmlFieldsToRemove' => $xmlFieldsToRemove, 'setDateLastN' => true)), // test w/ custom variable segments array('VisitsSummary.get', array( 'idSite' => self::$fixture->idSite, 'date' => self::$fixture->dateTime, 'periods' => array('day'), 'xmlFieldsToRemove' => $xmlFieldsToRemove, 'testSuffix' => '_segmentCustomVarName', 'segment' => 'customVariablePageName=@SET WITH', )), array('VisitsSummary.get', array( 'idSite' => self::$fixture->idSite, 'date' => self::$fixture->dateTime, 'periods' => array('day'), 'xmlFieldsToRemove' => $xmlFieldsToRemove, 'testSuffix' => '_segmentCustomVarValue', 'segment' => 'customVariableValue=@LoggedIn', )), array('VisitsSummary.get', array( 'idSite' => self::$fixture->idSite, 'date' => self::$fixture->dateTime, 'periods' => array('day'), 'xmlFieldsToRemove' => $xmlFieldsToRemove, 'testSuffix' => '_segmentAll', 'segment' => 'customVariableName=@Othercustom,customVariablePageValue=@abcdefghi', )), ); if (version_compare(Version::VERSION, '5.4.0-alpha', '>')) { // test getProcessedReport w/ custom variables subtable $return[] = array('API.getProcessedReport', array( 'idSite' => $idSite, 'date' => $dateTime, 'periods' => 'day', 'apiModule' => 'CustomVariables', 'apiAction' => 'getCustomVariablesValuesFromNameId', 'supertableApi' => 'CustomVariables.getCustomVariables', 'testSuffix' => '__subtable') ); } return $return; } /** * @dataProvider getApiForTesting */ public function testApi($api, $params) { $this->runApiTests($api, $params); } public static function getOutputPrefix() { return 'twoVisitsWithCustomVariables'; } public static function getPathToTestDirectory() { return dirname(__FILE__); } } TwoVisitsWithCustomVariablesTest::$fixture = new TwoVisitsWithCustomVariables();