mirror of
https://github.com/jcwimer/wrestlingApp
synced 2026-03-24 17:04:43 +00:00
Added first cypress e2e tests
This commit is contained in:
4
cypress-tests/Dockerfile
Normal file
4
cypress-tests/Dockerfile
Normal file
@@ -0,0 +1,4 @@
|
||||
FROM cypress/included:12.4.0
|
||||
|
||||
COPY cypress.config.js /
|
||||
COPY ./tests/* /cypress/e2e/
|
||||
13
cypress-tests/cypress.config.js
Normal file
13
cypress-tests/cypress.config.js
Normal file
@@ -0,0 +1,13 @@
|
||||
const { defineConfig } = require('cypress')
|
||||
|
||||
module.exports = defineConfig({
|
||||
e2e: {
|
||||
baseUrl: 'http://wrestlingdev-test.wimer.house',
|
||||
supportFile: false,
|
||||
video: false,
|
||||
},
|
||||
env: {
|
||||
CYPRESS_PASSWORD: 'password',
|
||||
CYPRESS_USERNAME: 'test@test.com',
|
||||
},
|
||||
})
|
||||
13
cypress-tests/run-cypress-tests.sh
Normal file
13
cypress-tests/run-cypress-tests.sh
Normal file
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
#!/bin/bash
|
||||
project_dir="$(dirname $(readlink -f ${BASH_SOURCE[0]}))/.."
|
||||
|
||||
cd ${project_dir}/cypress-tests
|
||||
|
||||
# include ruby, mysql, memcached, and cypress in dockerfile to emulate prod?
|
||||
# then cypress points to localhost within the docker
|
||||
|
||||
docker build -t wrestlingdev-cypress .
|
||||
|
||||
docker run -it --rm wrestlingdev-cypress
|
||||
27
cypress-tests/tests/01-login_spec.cy.js
Normal file
27
cypress-tests/tests/01-login_spec.cy.js
Normal file
@@ -0,0 +1,27 @@
|
||||
describe('Testing Log In', () => {
|
||||
it('Gets Log In Page and Logs In', () => {
|
||||
cy.visit('/')
|
||||
|
||||
cy.contains('Log In').click()
|
||||
|
||||
// Should be on a new URL which
|
||||
// includes '/commands/actions'
|
||||
cy.url().should('include', '/users/sign_in')
|
||||
|
||||
// Get an input, type into it
|
||||
cy.get('[id=user_email]').type(Cypress.env('CYPRESS_USERNAME'))
|
||||
|
||||
// Verify that the value has been updated
|
||||
cy.get('[id=user_email]').should('have.value', Cypress.env('CYPRESS_USERNAME'))
|
||||
|
||||
// Get an input, type into it
|
||||
cy.get('[id=user_password]').type(Cypress.env('CYPRESS_PASSWORD'))
|
||||
|
||||
// Verify that the value has been updated
|
||||
cy.get('[id=user_password]').should('have.value', Cypress.env('CYPRESS_PASSWORD'))
|
||||
|
||||
cy.get('input[type=submit]').click()
|
||||
|
||||
cy.contains('Signed in successfully')
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user