1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-22 01:47:00 +01:00

Terms of use e2e (#18861)

* use substitution

* add test
This commit is contained in:
Peter 2023-04-28 14:37:06 +01:00 committed by GitHub
parent 2589d8d5d3
commit a9243077b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 47 additions and 1 deletions

View File

@ -140,7 +140,8 @@ function defaultFixture() {
browserEnvironment: {},
nftsDropdownState: {},
connectedStatusPopoverHasBeenShown: true,
termsOfUseLastAgreed: 86400000000000,
termsOfUseLastAgreed:
'__FIXTURE_SUBSTITUTION__currentDateInMilliseconds',
defaultHomeActiveTabName: null,
fullScreenGasPollTokens: [],
notificationGasPollTokens: [],

View File

@ -0,0 +1,45 @@
const { strict: assert } = require('assert');
const { convertToHexValue, withFixtures } = require('../helpers');
const FixtureBuilder = require('../fixture-builder');
describe('Terms of use', function () {
const ganacheOptions = {
accounts: [
{
secretKey:
'0x7C9529A67102755B7E6102D6D950AC5D5863C98713805CEC576B945B15B71EAC',
balance: convertToHexValue(25000000000000000000),
},
],
};
it('accepts the updated terms of use', async function () {
const firstOfJan = 1672574400;
await withFixtures(
{
fixtures: new FixtureBuilder()
.withAppStateController({
termsOfUseLastAgreed: firstOfJan,
})
.build(),
ganacheOptions,
title: this.test.title,
},
async ({ driver }) => {
await driver.navigate();
await driver.fill('#password', 'correct horse battery staple');
await driver.press('#password', driver.Key.ENTER);
// accept updated terms of use
const acceptTerms = '[data-testid="terms-of-use-accept-button"]';
await driver.clickElement('[data-testid="popover-scroll-button"]');
await driver.clickElement('[data-testid="terms-of-use-checkbox"]');
await driver.clickElement(acceptTerms);
// check modal is no longer shown
await driver.waitForElementNotPresent(acceptTerms);
const termsExists = await driver.isElementPresent(acceptTerms);
assert.equal(termsExists, false, 'terms of use should not be shown');
},
);
});
});