umbraco-cypress-testhelpers
Version:
Test helpers for making Cypress tests for Umbraco solutions
87 lines • 6.99 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const commandBase_1 = tslib_1.__importDefault(require("./commandBase"));
const jsonHelper_1 = require("../../helpers/jsonHelper");
class UmbracoLogin extends commandBase_1.default {
constructor() {
super(...arguments);
this._commandName = 'umbracoLogin';
}
method(username, password, skipCheckTours = false) {
const cy = this.cy;
const cypress = this.cypress;
let toursClosed = false;
cy.clearCookies({ log: false });
cy.clearLocalStorage();
cy.request({
method: 'POST',
url: this._relativeBackOfficePath + '/backoffice/UmbracoApi/Authentication/PostLogin',
followRedirect: false,
body: {
username,
password,
},
headers: {
contentType: 'application/json',
},
log: false,
})
.then((postLoginResponse) => {
cy.visit(this._relativeBackOfficePath, { log: false }).then(($page) => {
cy.getCookie('UMB-XSRF-TOKEN', { log: false }).then((token) => {
cy.request({
method: 'GET',
url: this._relativeBackOfficePath + '/backoffice/UmbracoApi/CurrentUser/GetUserTours',
followRedirect: false,
headers: {
ContentType: 'application/json',
'X-UMB-XSRF-TOKEN': token.value,
},
log: false,
}).then((getToursResponse) => {
if (!skipCheckTours) {
const getUserToursBody = jsonHelper_1.JsonHelper.getBody(getToursResponse);
let umbEmailMarketingDisabled = false;
if (getUserToursBody.length === 0) {
// If length == 0, then the user has not disabled any tours => Tours will be shown
toursClosed = true;
}
else {
for (const userTourBody of getUserToursBody) {
if (userTourBody.alias === 'umbEmailMarketing') {
umbEmailMarketingDisabled = userTourBody.disabled;
}
if (userTourBody.disabled !== true) {
toursClosed = true;
}
}
}
if (toursClosed || umbEmailMarketingDisabled === false) {
cy.get('.umb-tour-step', { timeout: 60000 }).should('be.visible'); // We now due to the api calls this will be shown, but slow computers can take a while
cy.get('.umb-tour-step__close').click();
}
}
});
});
});
})
.then((_) => {
cypress.log({
displayName: 'Umbraco Login',
message: '',
consoleProps: () => {
// return an object literal which will
// be printed to the dev tools console
// on click
return {
Username: username,
'Tours closed': toursClosed,
};
},
});
});
}
}
exports.default = UmbracoLogin;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW1icmFjb0xvZ2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2N5cHJlc3MvY29tbWFuZHMvdW1icmFjb0xvZ2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdFQUF3QztBQUN4Qyx5REFBc0Q7QUFFdEQsTUFBcUIsWUFBYSxTQUFRLHFCQUFXO0lBQXJEOztRQUNFLGlCQUFZLEdBQUcsY0FBYyxDQUFDO0lBNkVoQyxDQUFDO0lBM0VDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLGNBQWMsR0FBRyxLQUFLO1FBQy9DLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDbkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUU3QixJQUFJLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDeEIsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBRXZCLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDVCxNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxJQUFJLENBQUMsdUJBQXVCLEdBQUcsaURBQWlEO1lBQ3JGLGNBQWMsRUFBRSxLQUFLO1lBQ3JCLElBQUksRUFBRTtnQkFDSixRQUFRO2dCQUNSLFFBQVE7YUFDVDtZQUNELE9BQU8sRUFBRTtnQkFDUCxXQUFXLEVBQUUsa0JBQWtCO2FBQ2hDO1lBQ0QsR0FBRyxFQUFFLEtBQUs7U0FDWCxDQUFDO2FBQ0MsSUFBSSxDQUFDLENBQUMsaUJBQWlCLEVBQUUsRUFBRTtZQUMxQixFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNwRSxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQzVELEVBQUUsQ0FBQyxPQUFPLENBQUM7d0JBQ1QsTUFBTSxFQUFFLEtBQUs7d0JBQ2IsR0FBRyxFQUFFLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxpREFBaUQ7d0JBQ3JGLGNBQWMsRUFBRSxLQUFLO3dCQUNyQixPQUFPLEVBQUU7NEJBQ1AsV0FBVyxFQUFFLGtCQUFrQjs0QkFDL0Isa0JBQWtCLEVBQUUsS0FBSyxDQUFDLEtBQUs7eUJBQ2hDO3dCQUNELEdBQUcsRUFBRSxLQUFLO3FCQUNYLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFO3dCQUMzQixJQUFJLENBQUMsY0FBYyxFQUFFOzRCQUNuQixNQUFNLGdCQUFnQixHQUFHLHVCQUFVLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7NEJBQzlELElBQUkseUJBQXlCLEdBQUcsS0FBSyxDQUFDOzRCQUN0QyxJQUFJLGdCQUFnQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7Z0NBQ2pDLGtGQUFrRjtnQ0FDbEYsV0FBVyxHQUFHLElBQUksQ0FBQzs2QkFDcEI7aUNBQU07Z0NBQ0wsS0FBSyxNQUFNLFlBQVksSUFBSSxnQkFBZ0IsRUFBRTtvQ0FDM0MsSUFBSSxZQUFZLENBQUMsS0FBSyxLQUFLLG1CQUFtQixFQUFFO3dDQUM5Qyx5QkFBeUIsR0FBRyxZQUFZLENBQUMsUUFBUSxDQUFDO3FDQUNuRDtvQ0FDRCxJQUFJLFlBQVksQ0FBQyxRQUFRLEtBQUssSUFBSSxFQUFFO3dDQUNsQyxXQUFXLEdBQUcsSUFBSSxDQUFDO3FDQUNwQjtpQ0FDRjs2QkFDRjs0QkFDRCxJQUFJLFdBQVcsSUFBSSx5QkFBeUIsS0FBSyxLQUFLLEVBQUU7Z0NBQ3RELEVBQUUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxzRkFBc0Y7Z0NBQ3pKLEVBQUUsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQzs2QkFDekM7eUJBQ0Y7b0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQztnQkFDVixXQUFXLEVBQUUsZUFBZTtnQkFDNUIsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsWUFBWSxFQUFFLEdBQUcsRUFBRTtvQkFDakIsc0NBQXNDO29CQUN0QyxzQ0FBc0M7b0JBQ3RDLFdBQVc7b0JBQ1gsT0FBTzt3QkFDTCxRQUFRLEVBQUUsUUFBUTt3QkFDbEIsY0FBYyxFQUFFLFdBQVc7cUJBQzVCLENBQUM7Z0JBQ0osQ0FBQzthQUNGLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNGO0FBOUVELCtCQThFQyJ9