Feature: Password Reset Forgot and Validation
  In order to reset my password
  As a user
  I want to be able to request a password reset link and validate the email

@createdomain @deleteuserapi @deletedomainapi @logout
Scenario Outline: Validation password reset from acount profile check
	Given I create a new user via API
	When I click on the Link in the sent email
	Then I enter a new password and confirm it
		| Password  |
		| Pa55W()rD |
	And I successfully login with new credentials and I do not see the login page anymore
	When I attempt to change the Password on the My Account page with: <NewPassword>
	Then The password validation should check the following criteria
		| validationText              | passed                   |
		| At least 12 characters      | <LengthPassed>           |
		| At least 1 uppercase letter | <UppercasePassed>        |
		| At least 1 lowercase letter | <LowercasePassed>        |
		| At least 1 number           | <NumberPassed>           |
		| At least 1 symbol           | <SpecialCharacterPassed> |
Examples:
	| NewPassword  | LengthPassed | UppercasePassed | LowercasePassed | NumberPassed | SpecialCharacterPassed |
	| Password12!  | false        | true            | true            | true         | true                   |
	| test@1~`!@#$ | true         | false           | true            | true         | true                   |
	| TEST@1~`!@#$ | true         | true            | false           | true         | true                   |
	| Test@q~`!@#$ | true         | true            | true            | false        | true                   |
	| Abcd1234pol1 | true         | true            | true            | true         | false                  |
	| Password123! | true         | true            | true            | true         | true                   |

@auth @logout
Scenario Outline: Validation create new password check
	When I attempt to create the Password on registration page with: <NewPassword>
	Then The password validation should check the following criteria
		| validationText              | passed                   |
		| At least 12 characters      | <LengthPassed>           |
		| At least 1 uppercase letter | <UppercasePassed>        |
		| At least 1 lowercase letter | <LowercasePassed>        |
		| At least 1 number           | <NumberPassed>           |
		| At least 1 symbol           | <SpecialCharacterPassed> |
Examples:
	| NewPassword  | LengthPassed | UppercasePassed | LowercasePassed | NumberPassed | SpecialCharacterPassed |
	| Password12!  | false        | true            | true            | true         | true                   |
	| test@1~`!@#$ | true         | false           | true            | true         | true                   |
	| TEST@1~`!@#$ | true         | true            | false           | true         | true                   |
	| Test@q~`!@#$ | true         | true            | true            | false        | true                   |
	| Abcd1234pol1 | true         | true            | true            | true         | false                  |
	| Password123! | true         | true            | true            | true         | true                   |
