Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/PrivacyManager/tests/UI/PrivacyManager_ConsentManager_spec.js')
-rw-r--r--plugins/PrivacyManager/tests/UI/PrivacyManager_ConsentManager_spec.js67
1 files changed, 67 insertions, 0 deletions
diff --git a/plugins/PrivacyManager/tests/UI/PrivacyManager_ConsentManager_spec.js b/plugins/PrivacyManager/tests/UI/PrivacyManager_ConsentManager_spec.js
new file mode 100644
index 0000000000..c0f26145dd
--- /dev/null
+++ b/plugins/PrivacyManager/tests/UI/PrivacyManager_ConsentManager_spec.js
@@ -0,0 +1,67 @@
+/*!
+ * 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("PrivacyManager_ConsentManager", function () {
+ this.timeout(0);
+
+ this.fixture = "Piwik\\Tests\\Fixtures\\EmptySiteWithSiteContentDetection";
+
+ var generalParams = 'idSite=1&period=day&date=2017-01-02',
+ urlBase = '?module=PrivacyManager&' + generalParams + '&action=';
+
+ before(function () {
+ testEnvironment.pluginsToLoad = ['PrivacyManager'];
+ testEnvironment.save();
+ });
+
+ async function setAnonymizeStartEndDate()
+ {
+ // make sure tests do not fail every day
+ await page.waitForSelector('input.anonymizeStartDate');
+ await page.waitForSelector('input.anonymizeEndDate');
+ await page.waitForTimeout(100);
+ await page.evaluate(function () {
+ $('input.anonymizeStartDate').val('2018-03-02').change();
+ });
+ await page.waitForTimeout(100);
+ await page.evaluate(function () {
+ $('input.anonymizeEndDate').val('2018-03-02').change();
+ });
+ await page.waitForTimeout(100);
+ }
+
+ async function loadActionPage(action)
+ {
+ await page.goto('about:blank');
+ await page.goto(urlBase + action);
+ await page.waitForNetworkIdle();
+
+ if (action === 'privacySettings') {
+ await setAnonymizeStartEndDate();
+ }
+ }
+
+ async function capturePage(screenshotName) {
+ await page.waitForNetworkIdle();
+ expect(await page.screenshotSelector('.pageWrap,#notificationContainer,.modal.open')).to.matchImage(screenshotName);
+ }
+
+
+ async function captureModal(screenshotName) {
+ await page.waitForNetworkIdle();
+ const modal = await page.$('.modal.open');
+ expect(await modal.screenshot()).to.matchImage(screenshotName);
+ }
+
+ it('should load privacy asking for consent page', async function() {
+ await loadActionPage('consent');
+ await capturePage('consent_default');
+ });
+
+});