diff options
Diffstat (limited to 'plugins/CustomDimensions/tests/UI')
33 files changed, 180 insertions, 0 deletions
diff --git a/plugins/CustomDimensions b/plugins/CustomDimensions deleted file mode 160000 -Subproject 318661a2fb1ef3b3e5d6d999ae8b9628cb5a113 diff --git a/plugins/CustomDimensions/tests/UI/.gitignore b/plugins/CustomDimensions/tests/UI/.gitignore new file mode 100644 index 0000000000..f39be478e7 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/.gitignore @@ -0,0 +1,2 @@ +/processed-ui-screenshots +/screenshot-diffs
\ No newline at end of file diff --git a/plugins/CustomDimensions/tests/UI/CustomDimensions_spec.js b/plugins/CustomDimensions/tests/UI/CustomDimensions_spec.js new file mode 100644 index 0000000000..1aed4a0176 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/CustomDimensions_spec.js @@ -0,0 +1,178 @@ +/*! + * Matomo - free/libre analytics platform + * + * Screenshot integration tests. + * + * @link https://matomo.org + * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later + */ + +describe("CustomDimensions", function () { + this.timeout(0); + + this.fixture = "Piwik\\Plugins\\CustomDimensions\\tests\\Fixtures\\TrackVisitsWithCustomDimensionsFixture"; + + var generalParams = 'idSite=1&period=year&date=2013-01-23', + urlBase = 'module=CoreHome&action=index&' + generalParams; + + var reportUrl = "?" + urlBase + "#?" + generalParams; + + var reportUrlDimension2 = reportUrl + "&category=General_Visitors&subcategory=customdimension2"; + var reportUrlDimension3 = reportUrl + "&category=General_Actions&subcategory=customdimension3"; + var reportUrlDimension4 = reportUrl + "&category=General_Actions&subcategory=customdimension4"; + + var popupSelector = '.ui-dialog:visible'; + + async function capturePageWrap (screenName, test) { + await test(); + var elem = await page.jQuery('.pageWrap'); + expect(await elem.screenshot()).to.matchImage(screenName); + } + + async function captureSelector (screenName, selector, test) { + await test(); + var elem = await page.jQuery(selector); + expect(await elem.screenshot()).to.matchImage(screenName); + } + + async function closeOpenedPopover() + { + await page.waitFor(100); + const closeButton = await page.jQuery('.ui-dialog:visible .ui-icon-closethick:visible'); + if (!closeButton) { + return; + } + + await closeButton.click(); + await page.waitFor(100); + } + + async function triggerRowAction(labelToClick, nameOfRowActionToTrigger) + { + var rowToMatch = 'td.label:contains(' + labelToClick + '):first'; + + await (await page.jQuery('table.dataTable tbody ' + rowToMatch)).hover(); + await page.waitFor(50); + await (await page.jQuery(rowToMatch + ' a.'+ nameOfRowActionToTrigger + ':visible')).hover(); // necessary to get popover to display + await (await page.jQuery(rowToMatch + ' a.' + nameOfRowActionToTrigger + ':visible')).click(); + await page.mouse.move(-10, -10); + await page.waitFor(250); // wait for animation + await page.waitForNetworkIdle(); + } + + before(function () { + testEnvironment.pluginsToLoad = ['CustomDimensions']; + testEnvironment.save(); + }); + + /** + * VISIT DIMENSION REPORTS + */ + + it('should show the report for the selected visit dimension', async function () { + await capturePageWrap('report_visit', async function () { + await page.goto(reportUrlDimension2); + }); + }); + + it('should add a menu item for each active visit dimension', async function () { + await captureSelector('report_visit_mainmenu', '#secondNavBar', async function () { + // we only capture a screenshot of a different part of the page, no need to do anything + }); + }); + + it('should add visit dimensions to goals report', async function () { + await captureSelector('report_goals_overview', '.reportsByDimensionView', async function () { + await page.goto( "?" + urlBase + "#?" + generalParams + "&category=Goals_Goals&subcategory=General_Overview"); + await (await page.jQuery('.reportsByDimensionView .dimension:contains(MyName1)')).click(); + await page.waitForNetworkIdle(); + await page.waitFor(100); + }); + }); + + /** + * ACTION DIMENSION REPORTS + */ + + it('should show the report for the selected action dimension', async function () { + await capturePageWrap('report_action', async function () { + await page.goto(reportUrlDimension3); + }); + }); + + it('should add a menu item for each active action dimension', async function () { + await captureSelector('report_actions_mainmenu', '#secondNavBar', async function () { + // we only capture a screenshot of a different part of the page, no need to do anything + }); + }); + + it('should offer only segmented visitor log and row action for first level entries', async function () { + await capturePageWrap('report_actions_rowactions', async function () { + await (await page.jQuery('td.label:contains(en):first')).hover(); + }); + }); + + it('should be able to render insights', async function () { + await capturePageWrap('report_action_insights', async function () { + await page.evaluate(function(){ + $('[data-footer-icon-id="insightsVisualization"]').click(); + }); + await page.waitForNetworkIdle(); + }); + }); + + it('should show an error when trying to open an inactive dimension', async function () { + await page.goto(reportUrlDimension4); + await page.waitForFunction('$(".pageWrap:contains(\'This page does not exist\')").length > 0'); + }); + + it('should be able to open segmented visitor log', async function () { + await captureSelector('report_actions_segmented_visitorlog', popupSelector, async function () { + await page.goto(reportUrlDimension3); + await triggerRowAction('en', 'actionSegmentVisitorLog'); + }); + }); + + it('should be able to open row evolution', async function () { + await captureSelector('report_actions_rowevolution', popupSelector, async function () { + await page.goto(reportUrlDimension3); + await triggerRowAction('en', 'actionRowEvolution'); + }); + }); + + it('should be able to show subtable and offer all row actions if scope is action', async function () { + await capturePageWrap('report_action_subtable', async function () { + await page.goto(reportUrlDimension3); + await (await page.jQuery('.dataTable .subDataTable .value:contains(en):first')).click(); + await page.waitForNetworkIdle(); + await (await page.jQuery('td.label:contains(en_US)')).hover(); + await page.waitFor(100); + }); + }); + + it('should be able to show row evolution for subtable', async function () { + await captureSelector('report_action_subtable_rowevolution', popupSelector, async function () { + await triggerRowAction('en_US', 'actionRowEvolution'); + }); + }); + + it('should be able to show segmented visitor log for subtable', async function () { + await captureSelector('report_action_subtable_segmented_visitor_log', popupSelector, async function () { + await closeOpenedPopover(); + await triggerRowAction('en_US', 'actionSegmentVisitorLog'); + }); + }); + + it('should be able to show transitions for subtable', async function () { + await captureSelector('report_action_subtable_transitions', popupSelector, async function () { + await page.goto('about:blank'); + await page.goto(reportUrlDimension3); + await (await page.jQuery('.dataTable .subDataTable .value:contains(en):first')).click(); + await page.waitForNetworkIdle(); + await page.waitFor(100); + await (await page.jQuery('td.label:contains(en_US)')).hover(); + await page.waitFor(100); + await triggerRowAction('en_US', 'actionTransitions'); + }); + }); +});
\ No newline at end of file diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/.gitkeep b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/.gitkeep diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_configure_button_disabled.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_configure_button_disabled.png Binary files differnew file mode 100644 index 0000000000..e859551e0a --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_configure_button_disabled.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_create_via_url.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_create_via_url.png Binary files differnew file mode 100644 index 0000000000..c483d3e7c3 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_create_via_url.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_cancel.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_cancel.png Binary files differnew file mode 100644 index 0000000000..b4053de31c --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_cancel.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_updated.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_updated.png Binary files differnew file mode 100644 index 0000000000..f9172d4817 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_updated.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_verify_created.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_verify_created.png Binary files differnew file mode 100644 index 0000000000..b87e2b8368 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_verify_created.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_verify_updated.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_verify_updated.png Binary files differnew file mode 100644 index 0000000000..dc726d7606 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_verify_updated.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_withdata.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_withdata.png Binary files differnew file mode 100644 index 0000000000..dc726d7606 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_action_dimension_withdata.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_via_url.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_via_url.png Binary files differnew file mode 100644 index 0000000000..f69a1f69c3 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_edit_via_url.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_inital.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_inital.png Binary files differnew file mode 100644 index 0000000000..44531c4a52 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_inital.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_created.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_created.png Binary files differnew file mode 100644 index 0000000000..0a805c304a --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_created.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_open.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_open.png Binary files differnew file mode 100644 index 0000000000..c483d3e7c3 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_open.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_remove_an_extraction.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_remove_an_extraction.png Binary files differnew file mode 100644 index 0000000000..943f8293dc --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_remove_an_extraction.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_withdata.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_withdata.png Binary files differnew file mode 100644 index 0000000000..4c7866a722 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_action_dimension_withdata.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_visit_dimension_created.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_visit_dimension_created.png Binary files differnew file mode 100644 index 0000000000..a45fe2127a --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_visit_dimension_created.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_visit_dimension_open.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_visit_dimension_open.png Binary files differnew file mode 100644 index 0000000000..c1856a75b4 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_manage_new_visit_dimension_open.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action.png Binary files differnew file mode 100644 index 0000000000..356423d768 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_insights.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_insights.png Binary files differnew file mode 100644 index 0000000000..aa40abf468 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_insights.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable.png Binary files differnew file mode 100644 index 0000000000..15be0ac257 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_rowevolution.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_rowevolution.png Binary files differnew file mode 100644 index 0000000000..e89b90a41c --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_rowevolution.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_segmented_visitor_log.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_segmented_visitor_log.png Binary files differnew file mode 100644 index 0000000000..611ce1e845 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_segmented_visitor_log.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_transitions.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_transitions.png Binary files differnew file mode 100644 index 0000000000..e60a8463c6 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_action_subtable_transitions.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_mainmenu.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_mainmenu.png Binary files differnew file mode 100644 index 0000000000..41a7494428 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_mainmenu.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_rowactions.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_rowactions.png Binary files differnew file mode 100644 index 0000000000..0fdada81da --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_rowactions.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_rowevolution.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_rowevolution.png Binary files differnew file mode 100644 index 0000000000..6f88076fae --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_rowevolution.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_segmented_visitorlog.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_segmented_visitorlog.png Binary files differnew file mode 100644 index 0000000000..987a0a64b5 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_actions_segmented_visitorlog.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_goals_overview.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_goals_overview.png Binary files differnew file mode 100644 index 0000000000..4d9f2fffcd --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_goals_overview.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit.png Binary files differnew file mode 100644 index 0000000000..5e0fca855c --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit_mainmenu.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit_mainmenu.png Binary files differnew file mode 100644 index 0000000000..5ef55e3765 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit_mainmenu.png diff --git a/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit_mainmenu_grouped.png b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit_mainmenu_grouped.png Binary files differnew file mode 100644 index 0000000000..ee16a107e1 --- /dev/null +++ b/plugins/CustomDimensions/tests/UI/expected-ui-screenshots/CustomDimensions_report_visit_mainmenu_grouped.png |