2022-02-18 11:03:55 +00:00
const Endpoints = require ( "./mocking/endpoints.js" ) ;
2022-02-14 12:06:27 +00:00
const browser = process . env . profile || "chromium" ;
const deviceType = process . env . DEVICE _TYPE || "desktop" ;
const isModel = ! ! process . env . MODEL ;
const featureName = isModel
? ` Client render on ' ${ browser } ' with ' ${ deviceType } ' dimension (model) `
: ` Client render on ' ${ browser } ' with ' ${ deviceType } ' dimension ` ;
Feature ( featureName ) ;
Scenario ( "TfaAuth page render test" , async ( { I } ) => {
2022-02-18 11:03:55 +00:00
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
2022-02-22 11:34:45 +00:00
I . amOnPage ( "/confirm/TfaAuth" ) ;
2022-02-18 11:03:55 +00:00
2022-02-14 12:06:27 +00:00
I . see ( "Enter code from authentication app" ) ;
I . seeElement ( {
react : "TextInput" ,
props : {
id : "code" ,
} ,
} ) ;
I . seeElement ( {
react : "Button" ,
} ) ;
I . saveScreenshot ( ` 1.tfa-auth.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 1.tfa-auth.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;
2022-02-18 14:55:15 +00:00
Scenario ( "Profile Remove page render test" , async ( { I } ) => {
I . mockEndpoint ( Endpoints . settings , "settings" ) ;
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
2022-02-22 11:34:45 +00:00
I . amOnPage ( "/confirm/ProfileRemove" ) ;
2022-02-18 14:55:15 +00:00
I . see ( "Web Office" ) ;
I . see ( "Attention! You are about to delete your account." ) ;
I . see ( 'By clicking "Delete my account" you agree with our Privacy policy.' ) ;
I . seeElement ( {
react : "Button" ,
} ) ;
I . saveScreenshot ( ` 2.profile-remove.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 2.profile-remove.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;
2022-02-21 19:01:36 +00:00
Scenario ( "Change phone page render test" , async ( { I } ) => {
I . mockEndpoint ( Endpoints . settings , "settings" ) ;
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
2022-02-22 11:34:45 +00:00
I . amOnPage ( "/confirm/PhoneActivation" ) ;
2022-02-21 19:01:36 +00:00
I . see ( "Enter mobile phone number" ) ;
I . seeElement ( {
react : "TextInput" ,
} ) ;
I . seeElement ( {
react : "Button" ,
} ) ;
I . saveScreenshot ( ` 3.change-phone.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 3.change-phone.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;
2022-02-21 19:12:45 +00:00
Scenario ( "Create user page render test" , async ( { I } ) => {
I . mockEndpoint ( Endpoints . settings , "settings" ) ;
I . mockEndpoint ( Endpoints . build , "build" ) ;
I . mockEndpoint ( Endpoints . password , "password" ) ;
I . mockEndpoint ( Endpoints . providers , "providers" ) ;
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
2022-02-22 11:34:45 +00:00
I . amOnPage ( "/confirm/LinkInvite" ) ;
2022-02-21 19:12:45 +00:00
I . see ( "Web Office" ) ;
I . saveScreenshot ( ` 4.create-user.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 4.create-user.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;
2022-02-21 19:20:08 +00:00
Scenario ( "Change owner page render test" , async ( { I } ) => {
I . mockEndpoint ( Endpoints . settings , "settings" ) ;
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
I . amOnPage ( "/confirm/PortalOwnerChange" ) ;
I . see ( "Web Office" ) ;
I . see ( "Please confirm that you want to change portal owner" ) ;
I . seeElement ( {
react : "Button" ,
props : {
className : "owner-button owner-buttons" ,
} ,
} ) ;
I . seeElement ( {
react : "Button" ,
props : {
className : "owner-buttons" ,
} ,
} ) ;
I . saveScreenshot ( ` 5.change-owner.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 5.change-owner.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;
2022-02-21 19:43:22 +00:00
Scenario ( "Activate user page render test" , async ( { I } ) => {
I . mockEndpoint ( Endpoints . settings , "settings" ) ;
I . mockEndpoint ( Endpoints . build , "build" ) ;
I . mockEndpoint ( Endpoints . password , "password" ) ;
I . mockEndpoint ( Endpoints . providers , "providers" ) ;
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
I . amOnPage ( "/confirm/Activation" ) ;
I . see ( "Web Office" ) ;
I . seeElement ( {
react : "TextInput" ,
props : {
className : "confirm-row" ,
id : "name" ,
} ,
} ) ;
I . seeElement ( {
react : "TextInput" ,
props : {
className : "confirm-row" ,
id : "surname" ,
} ,
} ) ;
I . seeElement ( {
react : "PasswordInput" ,
props : {
className : "confirm-row" ,
id : "password" ,
} ,
} ) ;
I . seeElement ( {
react : "Button" ,
props : {
className : "confirm-row" ,
} ,
} ) ;
I . saveScreenshot ( ` 6.activate-user.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 6.activate-user.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;
2022-02-22 11:33:22 +00:00
Scenario ( "Change password page render test" , async ( { I } ) => {
I . mockEndpoint ( Endpoints . settings , "settings" ) ;
I . mockEndpoint ( Endpoints . password , "password" ) ;
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
I . amOnPage ( "/confirm/PasswordChange" ) ;
I . see ( "Web Office" ) ;
I . see ( "Now you can create a new password" ) ;
I . seeElement ( {
react : "PasswordInput" ,
props : {
className : "password-input" ,
} ,
} ) ;
I . seeElement ( {
react : "Button" ,
props : {
className : "password-button" ,
} ,
} ) ;
I . saveScreenshot ( ` 7.change-password.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 7.change-password.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;
2022-02-24 19:45:17 +00:00
Scenario ( "TfaActivation page render test" , async ( { I } ) => {
I . mockEndpoint ( Endpoints . confirm , "confirm" ) ;
I . mockEndpoint ( Endpoints . setup , "setup" ) ;
I . amOnPage ( "/confirm/TfaActivation" ) ;
I . see ( "Configure your authenticator application" ) ;
I . see (
"To connect the app, scan the QR code or manually enter your secret key KRWVMTLBNVDGWZCG, and then enter a 6-digit code from your app in the field below."
) ;
I . seeElement ( {
react : "TextInput" ,
props : {
name : "code" ,
} ,
} ) ;
I . seeElement ( {
react : "Button" ,
} ) ;
I . saveScreenshot ( ` 8.tfa-activation.png ` ) ;
if ( ! isModel ) {
I . seeVisualDiff ( ` 8.tfa-activation.png ` , {
tolerance : 1 ,
prepareBaseImage : false ,
} ) ;
}
} ) ;