public function test_afterRequestProcessed_NoActionSet_ShouldBeAbleToExtractAValue() { $configuration = new Configuration(); $extractions = array(array('dimension' => 'url', 'pattern' => 'www(.+).com')); $configuration->configureNewDimension($idSite = 1, 'MyName1', CustomDimensions::SCOPE_VISIT, 1, true, $extractions, $caseSensitive = true); $extractions = array(array('dimension' => 'url', 'pattern' => 'www.piwik(.+).com'), array('dimension' => 'url', 'pattern' => 'www.ex(.+).com'), array('dimension' => 'url', 'pattern' => 'www(.+).com')); $configuration->configureNewDimension($idSite = 1, 'MyName2', CustomDimensions::SCOPE_VISIT, 2, true, $extractions, $caseSensitive = true); $extractions = array(array('dimension' => 'urlparam', 'pattern' => 'id')); $configuration->configureNewDimension($idSite = 1, 'MyName3', CustomDimensions::SCOPE_VISIT, 3, true, $extractions, $caseSensitive = true); $configuration->configureNewDimension($idSite = 1, 'MyName4', CustomDimensions::SCOPE_ACTION, 1, true, $extractions, $caseSensitive = true); $request = new Request(array('idsite' => 1, 'url' => 'http://www.example.com/test?id=11&module=test')); $action = new ActionPageview($request); $request->setMetadata('Actions', 'action', $action); $visitProperties = new VisitProperties(); $this->processor->onNewVisit($visitProperties, $request); $this->assertSame(array('custom_dimension_1' => '.example', 'custom_dimension_2' => 'ample', 'custom_dimension_3' => '11'), $visitProperties->getProperties()); $this->processor->afterRequestProcessed($visitProperties, $request); $this->assertSame(array('custom_dimension_1' => '11'), $action->getCustomFields()); }