1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
/*!
* Matomo - free/libre analytics platform
*
* Screenshot tests for UserId plugin
*
* @link https://matomo.org
* @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
describe("UserId", function () {
this.fixture = "Piwik\\Plugins\\UserId\\tests\\Fixtures\\TrackFewVisitsAndCreateUsers";
it('should show user id report', async function () {
await page.goto('?module=CoreHome&action=index&idSite=1&period=day&date=2010-02-04#?idSite=1&period=day&date=2010-02-04&category=General_Visitors&subcategory=UserId_UserReportTitle');
await page.waitForNetworkIdle();
expect(await page.screenshotSelector('#widgetUserIdgetUsers')).to.matchImage('report');
});
it('should switch to table with engagement metrics', async function () {
await page.click('.activateVisualizationSelection > span');
await page.click('.tableIcon[data-footer-icon-id=tableAllColumns]');
await page.mouse.move(-10, -10);
await page.waitForNetworkIdle();
expect(await page.screenshotSelector('#widgetUserIdgetUsers')).to.matchImage('report_engagement');
});
it('should correctly open the visitor profile', async function () {
var rowToMatch = 'td.label:contains(user1):first';
await (await page.jQuery('table.dataTable tbody ' + rowToMatch)).hover();
await page.waitForTimeout(100);
await (await page.jQuery(rowToMatch + ' a.actionvisitorDetails:visible')).hover();
await (await page.jQuery(rowToMatch + ' a.actionvisitorDetails:visible')).click();
await page.mouse.move(-10, -10);
await page.waitForTimeout(250);
await page.waitForNetworkIdle();
expect(await page.getWholeCurrentUrl()).to.match(/&popover=RowAction%243AvisitorDetails%243A[a-f0-9]{16}$/);
expect(await page.screenshotSelector('#Piwik_Popover')).to.matchImage('visitor_profile_popup');
});
});
|