mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
UserProfile.ChangePassword.feature rename
UserProfile.NameDescriptionLocation.feature
This commit is contained in:
parent
4ef7fe518b
commit
7a06c0c5ed
@ -1,4 +1,4 @@
|
|||||||
Feature: User change password
|
Feature: User profile - change password
|
||||||
As a user
|
As a user
|
||||||
I want to change my password in my settings
|
I want to change my password in my settings
|
||||||
For security, e.g. if I exposed my password by accident
|
For security, e.g. if I exposed my password by accident
|
||||||
@ -0,0 +1,38 @@
|
|||||||
|
Feature: User profile - name, description and location
|
||||||
|
As a user
|
||||||
|
I would like to change my name, add a description and a location
|
||||||
|
So others can see my name, get some info about me and my location
|
||||||
|
|
||||||
|
Background:
|
||||||
|
Given the following "users" are in the database:
|
||||||
|
| email | password | id | name | slug | termsAndConditionsAgreedVersion |
|
||||||
|
| peterpan@example.org | 123 | id-of-peter-pan | Peter Pan | peter-pan | 0.0.4 |
|
||||||
|
And I am logged in as "peter-pan"
|
||||||
|
And I navigate to page "settings"
|
||||||
|
|
||||||
|
Scenario: Change username
|
||||||
|
When I save "Hansi" as my new name
|
||||||
|
Then I can see my new name "Hansi" when I click on my profile picture in the top right
|
||||||
|
When I refresh the page
|
||||||
|
Then I can see my new name "Hansi" when I click on my profile picture in the top right
|
||||||
|
|
||||||
|
Scenario Outline: I set my location to "<location>"
|
||||||
|
When I save "<location>" as my location
|
||||||
|
And I navigate to page "/profile/peter-pan"
|
||||||
|
Then they can see "<location>" in the info box below my avatar
|
||||||
|
Examples: Location
|
||||||
|
| location | type |
|
||||||
|
| Paris | City |
|
||||||
|
| Saxony-Anhalt | Region |
|
||||||
|
| Germany | Country |
|
||||||
|
|
||||||
|
Scenario: Display a description on profile page
|
||||||
|
Given I have the following self-description:
|
||||||
|
"""
|
||||||
|
Ich lebe fettlos, fleischlos, fischlos dahin, fühle mich aber ganz wohl dabei
|
||||||
|
"""
|
||||||
|
When I navigate to page "/profile/peter-pan"
|
||||||
|
Then they can see the following text in the info box below my avatar:
|
||||||
|
"""
|
||||||
|
Ich lebe fettlos, fleischlos, fischlos dahin, fühle mich aber ganz wohl dabei
|
||||||
|
"""
|
||||||
@ -0,0 +1,7 @@
|
|||||||
|
import { Then } from "cypress-cucumber-preprocessor/steps";
|
||||||
|
|
||||||
|
Then('I can see my new name {string} when I click on my profile picture in the top right', name => {
|
||||||
|
cy.get('.avatar-menu').click() // open
|
||||||
|
cy.get('.avatar-menu-popover').contains(name)
|
||||||
|
cy.get('.avatar-menu').click() // close again
|
||||||
|
})
|
||||||
@ -0,0 +1,12 @@
|
|||||||
|
import { When } from "cypress-cucumber-preprocessor/steps";
|
||||||
|
|
||||||
|
When('I have the following self-description:', text => {
|
||||||
|
cy.get('textarea[id=about]')
|
||||||
|
.clear()
|
||||||
|
.type(text)
|
||||||
|
cy.get('[type=submit]')
|
||||||
|
.click()
|
||||||
|
.not('[disabled]')
|
||||||
|
cy.get('.iziToast-message')
|
||||||
|
.should('contain', 'Your data was successfully updated')
|
||||||
|
})
|
||||||
@ -0,0 +1,13 @@
|
|||||||
|
import { When } from "cypress-cucumber-preprocessor/steps";
|
||||||
|
|
||||||
|
When('I save {string} as my location', location => {
|
||||||
|
cy.get('input[id=city]').type(location)
|
||||||
|
cy.get('.ds-select-option')
|
||||||
|
.contains(location)
|
||||||
|
.click()
|
||||||
|
cy.get('[type=submit]')
|
||||||
|
.click()
|
||||||
|
.not('[disabled]')
|
||||||
|
cy.get('.iziToast-message')
|
||||||
|
.should('contain', 'Your data was successfully updated')
|
||||||
|
})
|
||||||
@ -0,0 +1,12 @@
|
|||||||
|
import { When } from "cypress-cucumber-preprocessor/steps";
|
||||||
|
|
||||||
|
When('I save {string} as my new name', name => {
|
||||||
|
cy.get('input[id=name]')
|
||||||
|
.clear()
|
||||||
|
.type(name)
|
||||||
|
cy.get('[type=submit]')
|
||||||
|
.click()
|
||||||
|
.not('[disabled]')
|
||||||
|
cy.get('.iziToast-message')
|
||||||
|
.should('contain', 'Your data was successfully updated')
|
||||||
|
})
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
import { When } from "cypress-cucumber-preprocessor/steps";
|
||||||
|
|
||||||
|
When('they can see the following text in the info box below my avatar:', text => {
|
||||||
|
cy.contains(text)
|
||||||
|
})
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
import { Then } from "cypress-cucumber-preprocessor/steps";
|
||||||
|
|
||||||
|
Then('they can see {string} in the info box below my avatar', location => {
|
||||||
|
cy.contains(location)
|
||||||
|
})
|
||||||
@ -2,73 +2,6 @@ import { When, Then } from 'cypress-cucumber-preprocessor/steps'
|
|||||||
|
|
||||||
/* global cy */
|
/* global cy */
|
||||||
|
|
||||||
let aboutMeText
|
|
||||||
let myLocation
|
|
||||||
|
|
||||||
const matchNameInUserMenu = name => {
|
|
||||||
cy.get('.avatar-menu').click() // open
|
|
||||||
cy.get('.avatar-menu-popover').contains(name)
|
|
||||||
cy.get('.avatar-menu').click() // close again
|
|
||||||
}
|
|
||||||
|
|
||||||
When('I save {string} as my new name', name => {
|
|
||||||
cy.get('input[id=name]')
|
|
||||||
.clear()
|
|
||||||
.type(name)
|
|
||||||
cy.get('[type=submit]')
|
|
||||||
.click()
|
|
||||||
.not('[disabled]')
|
|
||||||
cy.get('.iziToast-message')
|
|
||||||
.should('contain', 'Your data was successfully updated')
|
|
||||||
})
|
|
||||||
|
|
||||||
When('I save {string} as my location', location => {
|
|
||||||
cy.get('input[id=city]').type(location)
|
|
||||||
cy.get('.ds-select-option')
|
|
||||||
.contains(location)
|
|
||||||
.click()
|
|
||||||
cy.get('[type=submit]')
|
|
||||||
.click()
|
|
||||||
.not('[disabled]')
|
|
||||||
cy.get('.iziToast-message')
|
|
||||||
.should('contain', 'Your data was successfully updated')
|
|
||||||
myLocation = location
|
|
||||||
})
|
|
||||||
|
|
||||||
When('I have the following self-description:', text => {
|
|
||||||
cy.get('textarea[id=bio]')
|
|
||||||
.clear()
|
|
||||||
.type(text)
|
|
||||||
cy.get('[type=submit]')
|
|
||||||
.click()
|
|
||||||
.not('[disabled]')
|
|
||||||
cy.get('.iziToast-message')
|
|
||||||
.should('contain', 'Your data was successfully updated')
|
|
||||||
aboutMeText = text
|
|
||||||
})
|
|
||||||
|
|
||||||
When('people visit my profile page', url => {
|
|
||||||
cy.openPage('/profile/peter-pan')
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
When('they can see the text in the info box below my avatar', () => {
|
|
||||||
cy.contains(aboutMeText)
|
|
||||||
})
|
|
||||||
|
|
||||||
Then('they can see the location in the info box below my avatar', () => {
|
|
||||||
cy.contains(myLocation)
|
|
||||||
})
|
|
||||||
|
|
||||||
Then('the name {string} is still there', name => {
|
|
||||||
matchNameInUserMenu(name)
|
|
||||||
})
|
|
||||||
|
|
||||||
Then(
|
|
||||||
'I can see my new name {string} when I click on my profile picture in the top right',
|
|
||||||
name => matchNameInUserMenu(name)
|
|
||||||
)
|
|
||||||
|
|
||||||
When('I click on the {string} link', link => {
|
When('I click on the {string} link', link => {
|
||||||
cy.get('a')
|
cy.get('a')
|
||||||
.contains(link)
|
.contains(link)
|
||||||
|
|||||||
@ -1,37 +0,0 @@
|
|||||||
Feature: About me and location
|
|
||||||
As a user
|
|
||||||
I would like to add some about me text and a location
|
|
||||||
So others can get some info about me and my location
|
|
||||||
|
|
||||||
The location and about me are displayed on the user profile. Later it will be possible
|
|
||||||
to search for users by location.
|
|
||||||
|
|
||||||
Background:
|
|
||||||
Given I have a user account
|
|
||||||
And I am logged in
|
|
||||||
And I am on the "settings" page
|
|
||||||
|
|
||||||
Scenario: Change username
|
|
||||||
When I save "Hansi" as my new name
|
|
||||||
Then I can see my new name "Hansi" when I click on my profile picture in the top right
|
|
||||||
And when I refresh the page
|
|
||||||
Then the name "Hansi" is still there
|
|
||||||
|
|
||||||
Scenario Outline: I set my location to "<location>"
|
|
||||||
When I save "<location>" as my location
|
|
||||||
When people visit my profile page
|
|
||||||
Then they can see the location in the info box below my avatar
|
|
||||||
|
|
||||||
Examples: Location
|
|
||||||
| location | type |
|
|
||||||
| Paris | City |
|
|
||||||
| Saxony-Anhalt | Region |
|
|
||||||
| Germany | Country |
|
|
||||||
|
|
||||||
Scenario: Display a description on profile page
|
|
||||||
Given I have the following self-description:
|
|
||||||
"""
|
|
||||||
Ich lebe fettlos, fleischlos, fischlos dahin, fühle mich aber ganz wohl dabei
|
|
||||||
"""
|
|
||||||
When people visit my profile page
|
|
||||||
Then they can see the text in the info box below my avatar
|
|
||||||
Loading…
x
Reference in New Issue
Block a user