From 35f975accb45152dd669e0009237eed3dc6ada2b Mon Sep 17 00:00:00 2001 From: mattab Date: Sat, 20 Apr 2013 21:02:35 +1200 Subject: Fixes #3904: * new segment 'siteSearchKeyword' Fixes #3903, #3905: * adding few fields in the Live API output to accomodate getSuggestedValuesForSegment * renamed other fields for consistency with segment names Fixes #3906: * new API: getSuggestedValuesForSegment which returns top suggested values for a particular segment. It uses the Live.getLastVisitsDetails API to fetch the most recently used values, and will show the most used values first * Adding tests for everything. The test case actually generates data for all segments so that VisitsSummary.get returns some data for each of the 47 segments being tested returns some data. How it works: * generate extended data in fixture * Tests (1) call getSuggestedValuesForSegment for each segment, check there is some data returned for each segment * get the first suggested value from the list, * Tests (2) call VisitsSummary.get with this segment value, eg. countryCode==ru. * I worked this way for all 47 segments until all tests had some data ==> now we know that all segments have been tested and that the auto suggest works for all segments. TDD FTW! --- .../Core/PluginsFunctions/WidgetsListTest.php | 6 +- tests/PHPUnit/Core/SegmentTest.php | 6 +- tests/PHPUnit/DatabaseTestCase.php | 11 +- tests/PHPUnit/Fixtures/ManyVisitsWithGeoIP.php | 45 +- tests/PHPUnit/Integration/AutoSuggestAPITest.php | 132 +++ .../Integration/ManyVisitorsOneWebsiteTest.php | 8 +- ...ite_SeveralDaysDateRange_ArchivingTestsTest.php | 2 +- .../Integration/TrackingAPI_SetVisitorIdTest.php | 1 - ...itsWithCustomVariables_SegmentMatchNONETest.php | 5 + ...gestAPITest__Live.getLastVisitsDetails_year.xml | 1246 ++++++++++++++++++++ ...t_actions__API.getSuggestedValuesForSegment.xml | 6 + ...estAPITest_actions__VisitsSummary.get_range.xml | 12 + ...owserCode__API.getSuggestedValuesForSegment.xml | 4 + ...PITest_browserCode__VisitsSummary.get_range.xml | 12 + ...erVersion__API.getSuggestedValuesForSegment.xml | 4 + ...est_browserVersion__VisitsSummary.get_range.xml | 12 + ...Test_city__API.getSuggestedValuesForSegment.xml | 11 + ...uggestAPITest_city__VisitsSummary.get_range.xml | 12 + ...inentCode__API.getSuggestedValuesForSegment.xml | 7 + ...Test_continentCode__VisitsSummary.get_range.xml | 12 + ...untryCode__API.getSuggestedValuesForSegment.xml | 13 + ...PITest_countryCode__VisitsSummary.get_range.xml | 12 + ...ableName1__API.getSuggestedValuesForSegment.xml | 4 + ...ustomVariableName1__VisitsSummary.get_range.xml | 12 + ...ableName2__API.getSuggestedValuesForSegment.xml | 2 + ...ableName3__API.getSuggestedValuesForSegment.xml | 2 + ...ableName4__API.getSuggestedValuesForSegment.xml | 2 + ...ableName5__API.getSuggestedValuesForSegment.xml | 4 + ...ustomVariableName5__VisitsSummary.get_range.xml | 12 + ...PageName1__API.getSuggestedValuesForSegment.xml | 2 + ...PageName2__API.getSuggestedValuesForSegment.xml | 4 + ...mVariablePageName2__VisitsSummary.get_range.xml | 12 + ...PageName3__API.getSuggestedValuesForSegment.xml | 2 + ...PageName4__API.getSuggestedValuesForSegment.xml | 4 + ...mVariablePageName4__VisitsSummary.get_range.xml | 12 + ...PageName5__API.getSuggestedValuesForSegment.xml | 4 + ...mVariablePageName5__VisitsSummary.get_range.xml | 12 + ...ageValue1__API.getSuggestedValuesForSegment.xml | 2 + ...ageValue2__API.getSuggestedValuesForSegment.xml | 12 + ...VariablePageValue2__VisitsSummary.get_range.xml | 12 + ...ageValue3__API.getSuggestedValuesForSegment.xml | 2 + ...ageValue4__API.getSuggestedValuesForSegment.xml | 4 + ...VariablePageValue4__VisitsSummary.get_range.xml | 12 + ...ageValue5__API.getSuggestedValuesForSegment.xml | 12 + ...VariablePageValue5__VisitsSummary.get_range.xml | 12 + ...bleValue1__API.getSuggestedValuesForSegment.xml | 12 + ...stomVariableValue1__VisitsSummary.get_range.xml | 12 + ...bleValue2__API.getSuggestedValuesForSegment.xml | 2 + ...bleValue3__API.getSuggestedValuesForSegment.xml | 2 + ...bleValue4__API.getSuggestedValuesForSegment.xml | 2 + ...bleValue5__API.getSuggestedValuesForSegment.xml | 12 + ...stomVariableValue5__VisitsSummary.get_range.xml | 12 + ...irstVisit__API.getSuggestedValuesForSegment.xml | 6 + ...aysSinceFirstVisit__VisitsSummary.get_range.xml | 12 + ...erceOrder__API.getSuggestedValuesForSegment.xml | 6 + ...LastEcommerceOrder__VisitsSummary.get_range.xml | 12 + ...LastVisit__API.getSuggestedValuesForSegment.xml | 6 + ...daysSinceLastVisit__VisitsSummary.get_range.xml | 12 + ...PageTitle__API.getSuggestedValuesForSegment.xml | 6 + ...est_entryPageTitle__VisitsSummary.get_range.xml | 12 + ...ryPageUrl__API.getSuggestedValuesForSegment.xml | 5 + ...ITest_entryPageUrl__VisitsSummary.get_range.xml | 12 + ...PageTitle__API.getSuggestedValuesForSegment.xml | 6 + ...Test_exitPageTitle__VisitsSummary.get_range.xml | 12 + ...itPageUrl__API.getSuggestedValuesForSegment.xml | 5 + ...PITest_exitPageUrl__VisitsSummary.get_range.xml | 12 + ..._latitude__API.getSuggestedValuesForSegment.xml | 9 + ...stAPITest_latitude__VisitsSummary.get_range.xml | 12 + ...longitude__API.getSuggestedValuesForSegment.xml | 9 + ...tAPITest_longitude__VisitsSummary.get_range.xml | 12 + ...ystemCode__API.getSuggestedValuesForSegment.xml | 4 + ...peratingSystemCode__VisitsSummary.get_range.xml | 12 + ...pageTitle__API.getSuggestedValuesForSegment.xml | 6 + ...tAPITest_pageTitle__VisitsSummary.get_range.xml | 12 + ...t_pageUrl__API.getSuggestedValuesForSegment.xml | 5 + ...estAPITest_pageUrl__VisitsSummary.get_range.xml | 12 + ..._provider__API.getSuggestedValuesForSegment.xml | 4 + ...stAPITest_provider__VisitsSummary.get_range.xml | 12 + ...erKeyword__API.getSuggestedValuesForSegment.xml | 4 + ...st_referrerKeyword__VisitsSummary.get_range.xml | 12 + ...errerName__API.getSuggestedValuesForSegment.xml | 4 + ...ITest_referrerName__VisitsSummary.get_range.xml | 12 + ...errerType__API.getSuggestedValuesForSegment.xml | 5 + ...ITest_referrerType__VisitsSummary.get_range.xml | 12 + ...ferrerUrl__API.getSuggestedValuesForSegment.xml | 4 + ...PITest_referrerUrl__VisitsSummary.get_range.xml | 12 + ...egionCode__API.getSuggestedValuesForSegment.xml | 11 + ...APITest_regionCode__VisitsSummary.get_range.xml | 12 + ...esolution__API.getSuggestedValuesForSegment.xml | 4 + ...APITest_resolution__VisitsSummary.get_range.xml | 12 + ..._searches__API.getSuggestedValuesForSegment.xml | 5 + ...stAPITest_searches__VisitsSummary.get_range.xml | 12 + ...chKeyword__API.getSuggestedValuesForSegment.xml | 4 + ..._siteSearchKeyword__VisitsSummary.get_range.xml | 12 + ...tedGoalId__API.getSuggestedValuesForSegment.xml | 5 + ...sitConvertedGoalId__VisitsSummary.get_range.xml | 12 + ...Converted__API.getSuggestedValuesForSegment.xml | 4 + ...est_visitConverted__VisitsSummary.get_range.xml | 12 + ...isitCount__API.getSuggestedValuesForSegment.xml | 5 + ...APITest_visitCount__VisitsSummary.get_range.xml | 12 + ...tDuration__API.getSuggestedValuesForSegment.xml | 7 + ...Test_visitDuration__VisitsSummary.get_range.xml | 12 + ...rceStatus__API.getSuggestedValuesForSegment.xml | 4 + ...sitEcommerceStatus__VisitsSummary.get_range.xml | 12 + ...t_visitIp__API.getSuggestedValuesForSegment.xml | 20 + ...estAPITest_visitIp__VisitsSummary.get_range.xml | 12 + ...LocalHour__API.getSuggestedValuesForSegment.xml | 4 + ...est_visitLocalHour__VisitsSummary.get_range.xml | 12 + ...erverHour__API.getSuggestedValuesForSegment.xml | 5 + ...st_visitServerHour__VisitsSummary.get_range.xml | 12 + ...visitorId__API.getSuggestedValuesForSegment.xml | 13 + ...tAPITest_visitorId__VisitsSummary.get_range.xml | 12 + ...sitorType__API.getSuggestedValuesForSegment.xml | 5 + ...PITest_visitorType__VisitsSummary.get_range.xml | 12 + ...ebsiteTest__Live.getLastVisitsDetails_month.xml | 547 ++++++--- ...rsOneWebsiteTest__UserCountry.getCity_month.xml | 289 +++-- ...WebsiteTest__UserCountry.getContinent_month.xml | 96 +- ...neWebsiteTest__UserCountry.getCountry_month.xml | 219 ++-- ...OneWebsiteTest__UserCountry.getRegion_month.xml | 269 +++-- ...est_segment_city__UserCountry.getCity_month.xml | 17 +- ...egment_city__UserCountry.getContinent_month.xml | 17 +- ..._segment_city__UserCountry.getCountry_month.xml | 17 +- ...t_segment_city__UserCountry.getRegion_month.xml | 17 +- ...ent_continent__UserCountry.getCountry_month.xml | 109 +- ...segment_lat_long__UserCountry.getCity_month.xml | 23 +- ...nt_lat_long__UserCountry.getContinent_month.xml | 23 +- ...ment_lat_long__UserCountry.getCountry_month.xml | 23 +- ...gment_lat_long__UserCountry.getRegion_month.xml | 23 +- ...t_segment_region__UserCountry.getCity_month.xml | 34 +- ...ment_region__UserCountry.getContinent_month.xml | 17 +- ...egment_region__UserCountry.getCountry_month.xml | 17 +- ...segment_region__UserCountry.getRegion_month.xml | 17 +- ...ookieSupport__Live.getLastVisitsDetails_day.xml | 16 +- ...ordSpecified__Live.getLastVisitsDetails_day.xml | 13 + ...iGetReportMetadata__API.getSegmentsMetadata.xml | 20 +- ...tatusOrdered__Live.getLastVisitsDetails_day.xml | 56 +- ...derWithItems__Live.getLastVisitsDetails_day.xml | 187 +-- ...dataAndNormalAPI__Actions.getPageUrls_range.xml | 4 +- ...I__CustomVariables.getCustomVariables_range.xml | 48 +- ...LastN_MetadataAndNormalAPI__Goals.get_range.xml | 2 +- ...dNormalAPI__Live.getLastVisitsDetails_range.xml | 59 +- ...taAndNormalAPI__Referers.getCampaigns_range.xml | 4 +- ...ataAndNormalAPI__Referers.getKeywords_range.xml | 12 +- ...tadataAndNormalAPI__VisitsSummary.get_range.xml | 2 +- tests/PHPUnit/IntegrationTestCase.php | 49 +- tests/PHPUnit/Plugins/PrivacyManagerTest.php | 4 +- 146 files changed, 3781 insertions(+), 822 deletions(-) create mode 100644 tests/PHPUnit/Integration/AutoSuggestAPITest.php create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest__Live.getLastVisitsDetails_year.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_actions__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_actions__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_browserCode__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_browserCode__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_browserVersion__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_browserVersion__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_city__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_city__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_continentCode__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_continentCode__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_countryCode__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_countryCode__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableName1__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableName1__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableName2__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableName3__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableName4__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableName5__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableName5__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName1__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName2__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName2__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName3__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName4__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName4__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName5__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageName5__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue1__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue2__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue2__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue3__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue4__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue4__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue5__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariablePageValue5__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableValue1__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableValue1__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableValue2__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableValue3__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableValue4__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableValue5__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_customVariableValue5__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_daysSinceFirstVisit__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_daysSinceFirstVisit__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_daysSinceLastEcommerceOrder__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_daysSinceLastEcommerceOrder__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_daysSinceLastVisit__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_daysSinceLastVisit__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_entryPageTitle__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_entryPageTitle__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_entryPageUrl__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_entryPageUrl__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_exitPageTitle__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_exitPageTitle__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_exitPageUrl__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_exitPageUrl__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_latitude__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_latitude__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_longitude__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_longitude__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_operatingSystemCode__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_operatingSystemCode__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_pageTitle__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_pageTitle__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_pageUrl__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_pageUrl__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_provider__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_provider__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerKeyword__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerKeyword__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerName__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerName__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerType__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerType__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerUrl__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_referrerUrl__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_regionCode__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_regionCode__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_resolution__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_resolution__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_searches__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_searches__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_siteSearchKeyword__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_siteSearchKeyword__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitConvertedGoalId__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitConvertedGoalId__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitConverted__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitConverted__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitCount__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitCount__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitDuration__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitDuration__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitEcommerceStatus__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitEcommerceStatus__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitIp__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitIp__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitLocalHour__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitLocalHour__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitServerHour__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitServerHour__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitorId__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitorId__VisitsSummary.get_range.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitorType__API.getSuggestedValuesForSegment.xml create mode 100644 tests/PHPUnit/Integration/expected/test_AutoSuggestAPITest_visitorType__VisitsSummary.get_range.xml (limited to 'tests') diff --git a/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php b/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php index bd7983cdf6..7c2c0e598c 100644 --- a/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php +++ b/tests/PHPUnit/Core/PluginsFunctions/WidgetsListTest.php @@ -24,9 +24,7 @@ class WidgetsListTest extends DatabaseTestCase $_GET['idSite'] = 1; - $pluginsManager = Piwik_PluginsManager::getInstance(); - $pluginsToLoad = Piwik_Config::getInstance()->Plugins['Plugins']; - $pluginsManager->loadPlugins($pluginsToLoad); + IntegrationTestCase::loadAllPlugins(); Piwik_WidgetsList::_reset(); $widgets = Piwik_GetWidgetsList(); @@ -52,6 +50,7 @@ class WidgetsListTest extends DatabaseTestCase foreach ($numberOfWidgets AS $category => $widgetCount) { $this->assertEquals($widgetCount, count($widgets[$category]), sprintf("Widget: %s", $category)); } + IntegrationTestCase::unloadAllPlugins(); } /** @@ -132,4 +131,5 @@ class WidgetsListTest extends DatabaseTestCase } } + } diff --git a/tests/PHPUnit/Core/SegmentTest.php b/tests/PHPUnit/Core/SegmentTest.php index 2d021ea65c..35da2a58a3 100644 --- a/tests/PHPUnit/Core/SegmentTest.php +++ b/tests/PHPUnit/Core/SegmentTest.php @@ -44,17 +44,17 @@ class SegmentTest extends PHPUnit_Framework_TestCase { return array( // Normal segment - array('country==France', array( + array('countryCode==France', array( 'where' => ' log_visit.location_country = ? ', 'bind' => array('France'))), // unescape the comma please - array('country==a\,==', array( + array('countryCode==a\,==', array( 'where' => ' log_visit.location_country = ? ', 'bind' => array('a,=='))), // AND, with 2 values rewrites - array('country==a;visitorType!=returning;visitorType==new', array( + array('countryCode==a;visitorType!=returning;visitorType==new', array( 'where' => ' log_visit.location_country = ? AND log_visit.visitor_returning <> ? AND log_visit.visitor_returning = ? ', 'bind' => array('a', '1', '0'))), diff --git a/tests/PHPUnit/DatabaseTestCase.php b/tests/PHPUnit/DatabaseTestCase.php index 2b0627f251..9f91c7910c 100644 --- a/tests/PHPUnit/DatabaseTestCase.php +++ b/tests/PHPUnit/DatabaseTestCase.php @@ -15,6 +15,7 @@ */ class DatabaseTestCase extends PHPUnit_Framework_TestCase { + /** * Setup the database and create the base tables for all tests */ @@ -58,14 +59,7 @@ class DatabaseTestCase extends PHPUnit_Framework_TestCase public function tearDown() { parent::tearDown(); - try { - $plugins = Piwik_PluginsManager::getInstance()->getLoadedPlugins(); - foreach ($plugins AS $plugin) { - $plugin->uninstall(); - } - Piwik_PluginsManager::getInstance()->unloadPlugins(); - } catch (Exception $e) { - } + IntegrationTestCase::unloadAllPlugins(); Piwik::dropDatabase(); Piwik_DataTable_Manager::getInstance()->deleteAll(); Piwik_Option::getInstance()->clearCache(); @@ -76,4 +70,5 @@ class DatabaseTestCase extends PHPUnit_Framework_TestCase Piwik_TablePartitioning::$tablesAlreadyInstalled = null; Zend_Registry::_unsetInstance(); } + } diff --git a/tests/PHPUnit/Fixtures/ManyVisitsWithGeoIP.php b/tests/PHPUnit/Fixtures/ManyVisitsWithGeoIP.php index 33f2f7006c..88cd783ae1 100644 --- a/tests/PHPUnit/Fixtures/ManyVisitsWithGeoIP.php +++ b/tests/PHPUnit/Fixtures/ManyVisitsWithGeoIP.php @@ -30,6 +30,9 @@ class Test_Piwik_Fixture_ManyVisitsWithGeoIP extends Test_Piwik_BaseFixture '103.29.196.229', // in Indonesia (Bali), (only Indonesia will show up) ); + protected $idGoal; + protected $idGoal2; + public function setUp() { $this->setUpWebsitesAndGoals(); @@ -58,7 +61,8 @@ class Test_Piwik_Fixture_ManyVisitsWithGeoIP extends Test_Piwik_BaseFixture private function setUpWebsitesAndGoals() { self::createWebsite($this->dateTime, 0, "Site 1"); - Piwik_Goals_API::getInstance()->addGoal($this->idSite, 'all', 'url', 'http', 'contains', false, 5); + $this->idGoal = Piwik_Goals_API::getInstance()->addGoal($this->idSite, 'all', 'url', 'http', 'contains', false, 5); + $this->idGoal2 = Piwik_Goals_API::getInstance()->addGoal($this->idSite, 'two', 'url', 'xxxxxxxxxxxxx', 'contains', false, 5); } private function trackVisits($visitorCount, $setIp = false, $useLocal = true, $doBulk = false) @@ -73,7 +77,7 @@ class Test_Piwik_Fixture_ManyVisitsWithGeoIP extends Test_Piwik_BaseFixture $t->setTokenAuth(self::getTokenAuth()); } for ($i = 0; $i != $visitorCount; ++$i) { - $t->setNewVisitorId(); + $t->setVisitorId( substr(md5($i + 1000), 0, $t::LENGTH_VISITOR_ID)); if ($setIp) { $t->setIp(current($this->ips)); next($this->ips); @@ -85,7 +89,12 @@ class Test_Piwik_Fixture_ManyVisitsWithGeoIP extends Test_Piwik_BaseFixture $date = Piwik_Date::factory($dateTime)->addDay($i); $t->setForceVisitDateTime($date->getDatetime()); $t->setUrl("http://piwik.net/grue/lair"); - $r = $t->doTrackPageView('It\'s pitch black...'); + $t->setCustomVariable(1, 'Cvar 1 name', 'Cvar1 value is ' .$i , 'visit'); + $t->setCustomVariable(5, 'Cvar 5 name', 'Cvar5 value is ' .$i , 'visit'); + $t->setCustomVariable(2, 'Cvar 2 PAGE name', 'Cvar2 PAGE value is ' .$i, 'page'); + $t->setCustomVariable(5, 'Cvar 5 PAGE name', 'Cvar5 PAGE value is ' .$i, 'page'); + + $r = $t->doTrackPageView('It\'s