Features ‐ Register user account - Andrei15193/HintKeep GitHub Wiki

Source document: RegisterUserAccount.feature.

As a user
I want to sign up
So that I can access the application

Scenario: The Sign Up page @ignore-webclient

Given the landing page

When I press the "sign up" link

Then I am on the "sign up" page
And I have the "username" field
And I have the "password" field
And I have the "confirm password" field
And I have the "hint" field
And I have the "sign up" button

Scenario: Create account @ignore-webclient

Given the sign up page

When I enter "username" in the "username" field
And I enter "passWORD$123" in the "password" field
And I enter "passWORD$123" in the "confirm password" field
And I enter "account hint" in the "hint" field
And I enter "[email protected]" in the "email" field
And I press the sign up button

Then I am on the "accounts" page
And the current user is "username"

Scenario: Error messages for mandatory input fields @ignore-webclient

Given the sign up page

When I press the "sign up" button

Then I have "A username is required" error message for the "username" field
And I have "A password is required" error message for the "password" field
And I have "A matching password is required" error message for the "confirm password" field
And I have "A hint is required" error message for the "hint" field
And I have "An email address is required" error message for the "email" field

Scenario: Error messages for invalid email address @ignore-webclient

Given the sign up page

When I enter "username" in the "username" field
And I enter "passWORD$123" in the "password" field
And I enter "passWORD$123" in the "confirm password" field
And I enter "account hint" in the "hint" field
And I enter "invalid" in the "email" field
And I press the sign up button

Then I have "A valid email address is required" error message for the "email" field

Scenario: Error messages for not matching passwords @ignore-webclient

Given the sign up page

When I enter "username" in the "username" field
And I enter "passWORD$123" in the "password" field
And I enter "somenthing else" in the "confirm password" field
And I enter "account hint" in the "hint" field
And I enter "[email protected]" in the "email" field
And I press the sign up button

Then I have "Passwords do not match" error message for the "password" field

Scenario: Duplicate account @ignore-webclient

Given the sign up page
And a user with "USERNAME" username and "[email protected]" email

When I enter "username" in the "username" field
And I enter "passWORD$123" in the "password" field
And I enter "passWORD$123" in the "confirm password" field
And I enter "account hint" in the "hint" field
And I enter "[email protected]" in the "email" field
And I press the sign up button

Then I have "The username is unavailable" error message for the "username" field

Scenario: Duplicate email @ignore-webclient

Given the sign up page
And a user with "different username" username and "[email protected]" email

When I enter "username" in the "username" field
And I enter "passWORD$123" in the "password" field
And I enter "passWORD$123" in the "confirm password" field
And I enter "account hint" in the "hint" field
And I enter "[email protected]" in the "email" field
And I press the sign up button

Then I have "The email address is unavailable" error message for the "email" field

Scenario: Field character limit @ignore-webclient

Given the sign up page

When I enter 251 characters in the "username" field
And I enter 251 characters in the "password" field
And I enter 251 characters in the "confirm password" field
And I enter 251 characters in the "hint" field
And I enter 251 character email address in the "email" field
And I press the sign up button

Then I have "The username can be at most 250 characters" error message for the "username" field
And I have "The password can be at most 250 characters" error message for the "password" field
And I have "The hint can be at most 250 characters" error message for the "hint" field
And I have "The email address can be at most 250 characters" error message for the "email" field

Scenario Outline: Password strength @ignore-webclient

Given the sign up page

When I enter "username" in the "username" field
And I enter "" in the "password" field
And I enter "" in the "confirm password" field
And I enter "account hint" in the "hint" field
And I enter "[email protected]" in the "email" field
And I press the sign up button

Then I have "The password must be strong, at least 8 characters long containing both lowercase and uppercase letters alongside at least one numeric and special character" error message for the "password" field

Examples:

password
pass
PASS
PaSs
passwordWithManyCharacters
passwordWith24Characters
@@1234567890!@#$%
still_not_strong?//hat?11

Scenario: Cancel button @ignore-webclient

Given the sign up page

When I press the "cancel" link

Then I am on the "Login" page

Scenario: Cancelling account creation @ignore-webclient

Given the sign up page

When I enter "username" in the "username" field
And I press the "cancel" link

Then I am on the "Login" page

⚠️ **GitHub.com Fallback** ⚠️