From a9ae3db65c46fa1511f052b106dbcd3871cf433c Mon Sep 17 00:00:00 2001 From: mattpiwik <matthieu.aubry@gmail.com> Date: Thu, 3 Jan 2013 07:48:24 +0000 Subject: [PATCH] better test output debug (NOW I UNDERSTAND) and trying fix build git-svn-id: http://dev.piwik.org/svn/trunk@7725 59fd770c-687e-43c8-a1e3-f5a4ff64c105 --- tests/PHPUnit/Integration/NonUnicodeTest.php | 2 +- ..._NonUnicode__Actions.getPageTitles_day.xml | 8 +- ...st_NonUnicode__Actions.getPageUrls_day.xml | 8 +- ...ode__Actions.getSiteSearchKeywords_day.xml | 4 +- ...Unicode__Live.getLastVisitsDetails_day.xml | 124 ++++++++++++++---- ...t_NonUnicode__Referers.getWebsites_day.xml | 26 ++-- tests/PHPUnit/IntegrationTestCase.php | 23 +++- 7 files changed, 146 insertions(+), 49 deletions(-) diff --git a/tests/PHPUnit/Integration/NonUnicodeTest.php b/tests/PHPUnit/Integration/NonUnicodeTest.php index c200ee4a38..be14a7787d 100755 --- a/tests/PHPUnit/Integration/NonUnicodeTest.php +++ b/tests/PHPUnit/Integration/NonUnicodeTest.php @@ -112,7 +112,7 @@ class Test_Piwik_Integration_NonUnicodeTest extends IntegrationTestCase self::checkResponse($visitor->doTrackPageView('Site Search')); $visitor->setPageCharset(''); - $visitor->setForceVisitDateTime(Piwik_Date::factory(self::$dateTime)->addHour(0.55)->getDatetime()); + $visitor->setForceVisitDateTime(Piwik_Date::factory(self::$dateTime)->addHour(0.5)->getDatetime()); $visitor->setUrl('http://example.org/exit-page'); self::checkResponse($visitor->doTrackPageView('Page title is always UTF-8')); diff --git a/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageTitles_day.xml b/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageTitles_day.xml index 53b4ba83cf..008d9e87fb 100755 --- a/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageTitles_day.xml +++ b/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageTitles_day.xml @@ -5,10 +5,12 @@ <nb_visits>1</nb_visits> <nb_uniq_visitors>1</nb_uniq_visitors> <nb_hits>2</nb_hits> - <sum_time_spent>1980</sum_time_spent> + <sum_time_spent>360</sum_time_spent> <nb_hits_following_search>2</nb_hits_following_search> - <avg_time_on_page>1980</avg_time_on_page> + <exit_nb_uniq_visitors>1</exit_nb_uniq_visitors> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>360</avg_time_on_page> <bounce_rate>0%</bounce_rate> - <exit_rate>0%</exit_rate> + <exit_rate>100%</exit_rate> </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageUrls_day.xml b/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageUrls_day.xml index 220e3a4778..3b556b046b 100755 --- a/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageUrls_day.xml +++ b/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getPageUrls_day.xml @@ -5,11 +5,13 @@ <nb_visits>1</nb_visits> <nb_uniq_visitors>1</nb_uniq_visitors> <nb_hits>1</nb_hits> - <sum_time_spent>1620</sum_time_spent> + <sum_time_spent>0</sum_time_spent> <nb_hits_following_search>1</nb_hits_following_search> - <avg_time_on_page>1620</avg_time_on_page> + <exit_nb_uniq_visitors>1</exit_nb_uniq_visitors> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> <bounce_rate>0%</bounce_rate> - <exit_rate>0%</exit_rate> + <exit_rate>100%</exit_rate> <url>http://example.org/exit-page</url> </row> <row> diff --git a/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getSiteSearchKeywords_day.xml b/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getSiteSearchKeywords_day.xml index 42b11cd5b7..9b4eb015d0 100755 --- a/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getSiteSearchKeywords_day.xml +++ b/tests/PHPUnit/Integration/expected/test_NonUnicode__Actions.getSiteSearchKeywords_day.xml @@ -15,9 +15,9 @@ <label>non unicode keyword </label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> - <sum_time_spent>180</sum_time_spent> + <sum_time_spent>0</sum_time_spent> <nb_pages_per_search>1</nb_pages_per_search> - <avg_time_on_page>180</avg_time_on_page> + <avg_time_on_page>0</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>0%</exit_rate> </row> diff --git a/tests/PHPUnit/Integration/expected/test_NonUnicode__Live.getLastVisitsDetails_day.xml b/tests/PHPUnit/Integration/expected/test_NonUnicode__Live.getLastVisitsDetails_day.xml index 8fd89782a6..85b49a230f 100644 --- a/tests/PHPUnit/Integration/expected/test_NonUnicode__Live.getLastVisitsDetails_day.xml +++ b/tests/PHPUnit/Integration/expected/test_NonUnicode__Live.getLastVisitsDetails_day.xml @@ -1,5 +1,96 @@ <?xml version="1.0" encoding="utf-8" ?> <result> + <row> + <idSite>1</idSite> + <idVisit>2</idVisit> + <visitIp>156.5.3.2</visitIp> + + <visitorType>returning</visitorType> + <visitorTypeIcon>plugins/Live/templates/images/returningVisitor.gif</visitorTypeIcon> + <visitConverted>0</visitConverted> + <visitConvertedIcon /> + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <searches>1</searches> + <actions>1</actions> + <actionDetails> + <row> + <type>search</type> + <url /> + <pageTitle>a keyword</pageTitle> + <pageIdAction /> + <pageId>6</pageId> + + <customVariables> + <row> + <customVariableName4>Search Category</customVariableName4> + <customVariableValue4>Search Kategory</customVariableValue4> + </row> + </customVariables> + <icon>themes/default/images/search_ico.png</icon> + </row> + </actionDetails> + <customVariables> + </customVariables> + <goalConversions>0</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + <visitLocalTime>12:34:06</visitLocalTime> + + + + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <visitCount>1</visitCount> + <daysSinceLastVisit>0</daysSinceLastVisit> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <continent>Europe</continent> + <country>France</country> + <countryFlag>plugins/UserCountry/flags/fr.png</countryFlag> + <region /> + <city /> + <location>France</location> + <latitude /> + <longitude /> + <provider>Unknown</provider> + <providerUrl>http://piwik.org/faq/general/#faq_52</providerUrl> + <referrerType>website</referrerType> + <referrerTypeName>Websites</referrerTypeName> + <referrerName>anothersite.com</referrerName> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl>http://anothersite.com/whatever.html</referrerUrl> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <operatingSystem>Windows XP</operatingSystem> + <operatingSystemShortName>Win XP</operatingSystemShortName> + <operatingSystemIcon>plugins/UserSettings/images/os/WXP.gif</operatingSystemIcon> + <browserFamily>gecko</browserFamily> + <browserFamilyDescription>Gecko (Firefox)</browserFamilyDescription> + <browserName>Firefox 3.6</browserName> + <browserIcon>plugins/UserSettings/images/browsers/FF.gif</browserIcon> + <screenType>normal</screenType> + <resolution>1024x768</resolution> + <screenTypeIcon>plugins/UserSettings/images/screens/normal.gif</screenTypeIcon> + <plugins>flash, java</plugins> + <pluginsIcons> + <row> + <pluginIcon>plugins/UserSettings/images/plugins/flash.gif</pluginIcon> + <pluginName>flash</pluginName> + </row> + <row> + <pluginIcon>plugins/UserSettings/images/plugins/java.gif</pluginIcon> + <pluginName>java</pluginName> + </row> + </pluginsIcons> + + + + + + </row> <row> <idSite>1</idSite> <idVisit>1</idVisit> @@ -11,8 +102,8 @@ <visitConvertedIcon /> <visitEcommerceStatus>none</visitEcommerceStatus> <visitEcommerceStatusIcon /> - <searches>4</searches> - <actions>6</actions> + <searches>3</searches> + <actions>5</actions> <actionDetails> <row> <type>action</type> @@ -53,17 +144,6 @@ <timeSpentPretty>6 min 0s</timeSpentPretty> <icon>themes/default/images/search_ico.png</icon> </row> - <row> - <type>search</type> - <url /> - <pageTitle>non unicode keyword </pageTitle> - <pageIdAction /> - <pageId>4</pageId> - - <timeSpent>180</timeSpent> - <timeSpentPretty>3 min 0s</timeSpentPretty> - <icon>themes/default/images/search_ico.png</icon> - </row> <row> <type>action</type> <url>http://example.org/exit-page</url> @@ -71,23 +151,17 @@ <pageIdAction>6</pageIdAction> <pageId>5</pageId> - <timeSpent>1620</timeSpent> - <timeSpentPretty>27 min 0s</timeSpentPretty> <icon /> </row> <row> <type>search</type> <url /> - <pageTitle>a keyword</pageTitle> + <pageTitle>non unicode keyword </pageTitle> <pageIdAction /> - <pageId>6</pageId> + <pageId>4</pageId> - <customVariables> - <row> - <customVariableName4>Search Category</customVariableName4> - <customVariableValue4>Search Kategory</customVariableValue4> - </row> - </customVariables> + <timeSpent>0</timeSpent> + <timeSpentPretty>0s</timeSpentPretty> <icon>themes/default/images/search_ico.png</icon> </row> </actionDetails> @@ -101,8 +175,8 @@ - <visitDuration>2521</visitDuration> - <visitDurationPretty>42 min 1s</visitDurationPretty> + <visitDuration>721</visitDuration> + <visitDurationPretty>12 min 1s</visitDurationPretty> <visitCount>1</visitCount> <daysSinceLastVisit>0</daysSinceLastVisit> <daysSinceFirstVisit>0</daysSinceFirstVisit> diff --git a/tests/PHPUnit/Integration/expected/test_NonUnicode__Referers.getWebsites_day.xml b/tests/PHPUnit/Integration/expected/test_NonUnicode__Referers.getWebsites_day.xml index a9317aa894..0052f0580d 100755 --- a/tests/PHPUnit/Integration/expected/test_NonUnicode__Referers.getWebsites_day.xml +++ b/tests/PHPUnit/Integration/expected/test_NonUnicode__Referers.getWebsites_day.xml @@ -2,21 +2,31 @@ <result> <row> <label>anothersite.com</label> - <nb_uniq_visitors>1</nb_uniq_visitors> - <nb_visits>1</nb_visits> + <nb_uniq_visitors>2</nb_uniq_visitors> + <nb_visits>2</nb_visits> <nb_actions>6</nb_actions> - <max_actions>6</max_actions> - <sum_visit_length>2521</sum_visit_length> - <bounce_count>0</bounce_count> + <max_actions>5</max_actions> + <sum_visit_length>721</sum_visit_length> + <bounce_count>1</bounce_count> <nb_visits_converted>0</nb_visits_converted> <subtable> + <row> + <label>http://anothersite.com/whatever.html</label> + <nb_uniq_visitors>1</nb_uniq_visitors> + <nb_visits>1</nb_visits> + <nb_actions>1</nb_actions> + <max_actions>1</max_actions> + <sum_visit_length>0</sum_visit_length> + <bounce_count>1</bounce_count> + <nb_visits_converted>0</nb_visits_converted> + </row> <row> <label>http://anothersite.com/whatever.html?whatever=Ato</label> <nb_uniq_visitors>1</nb_uniq_visitors> <nb_visits>1</nb_visits> - <nb_actions>6</nb_actions> - <max_actions>6</max_actions> - <sum_visit_length>2521</sum_visit_length> + <nb_actions>5</nb_actions> + <max_actions>5</max_actions> + <sum_visit_length>721</sum_visit_length> <bounce_count>0</bounce_count> <nb_visits_converted>0</nb_visits_converted> </row> diff --git a/tests/PHPUnit/IntegrationTestCase.php b/tests/PHPUnit/IntegrationTestCase.php index 0d4a4a6884..c98cd1ce00 100755 --- a/tests/PHPUnit/IntegrationTestCase.php +++ b/tests/PHPUnit/IntegrationTestCase.php @@ -914,11 +914,11 @@ abstract class IntegrationTestCase extends PHPUnit_Framework_TestCase $this->assertEquals(strlen($expected), strlen($response), "Differences with expected in: $processedFilePath"); $this->assertEquals($expected, $response, "Differences with expected in: $processedFilePath"); } - - if (trim($response) == trim($expected)) { - file_put_contents($processedFilePath, $response); - } - } + + if (trim($response) == trim($expected)) { + file_put_contents($processedFilePath, $response); + } + } catch (Exception $ex) { $this->comparisonFailures[] = $ex; @@ -1135,10 +1135,19 @@ abstract class IntegrationTestCase extends PHPUnit_Framework_TestCase . "'. 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 "); } - + + // Display as one error all sub-failures if (!empty($this->comparisonFailures)) { - throw reset($this->comparisonFailures); + $messages = ''; + $i = 1; + foreach($this->comparisonFailures as $failure) { + $msg = $failure->getMessage(); + $msg = strtok($msg, "\n"); + $messages .= "\n#" . $i++ . ": " . $msg; + } + $messages .= " \n "; + throw new Exception($messages); } } -- GitLab