mirror of
https://github.com/typemill/typemill.git
synced 2025-01-17 13:28:19 +01:00
158 lines
4.2 KiB
JavaScript
158 lines
4.2 KiB
JavaScript
describe('Typemill Theme Settings', function()
|
|
{
|
|
before(function ()
|
|
{
|
|
cy.visit('/tm/login')
|
|
cy.url().should('include','/tm/login')
|
|
|
|
cy.get('input[name="username"]').type('trendschau')
|
|
cy.get('input[name="password"]').type('password')
|
|
|
|
cy.get('form').submit()
|
|
cy.url().should('include','/tm/content')
|
|
cy.getCookie('typemill-session').should('exist')
|
|
|
|
cy.visit('/tm/themes')
|
|
cy.url().should('include','/tm/themes')
|
|
})
|
|
|
|
beforeEach(function ()
|
|
{
|
|
Cypress.Cookies.preserveOnce('typemill-session')
|
|
})
|
|
|
|
it('changes default values', function()
|
|
{
|
|
|
|
// open the form
|
|
cy.get('#cyanine-toggle')
|
|
.should('contain', 'Settings')
|
|
.click()
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[introButtonLink]"]')
|
|
.clear()
|
|
.type('https://typemill.net')
|
|
.should('have.value', 'https://typemill.net')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[introButtonLabel]"]')
|
|
.clear()
|
|
.type('Typemill')
|
|
.should('have.value', 'Typemill')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[chapnum]"]')
|
|
.should('not.be.checked')
|
|
.and('not.be.visible')
|
|
.check({ force: true })
|
|
.should('be.checked')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[authorPosition][top]"]')
|
|
.should('not.be.checked')
|
|
.and('not.be.visible')
|
|
.check({ force: true })
|
|
.should('be.checked')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[authorIntro]"]')
|
|
.clear()
|
|
.type('Writer')
|
|
.should('have.value', 'Writer')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[datePosition][bottom]"]')
|
|
.should('not.be.checked')
|
|
.and('not.be.visible')
|
|
.check({ force: true })
|
|
.should('be.checked')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[dateIntro]"]')
|
|
.clear()
|
|
.type('Final update')
|
|
.should('have.value', 'Final update')
|
|
|
|
cy.get('select[name="cyanine[dateFormat]"]')
|
|
.should('have.value', 'm/d/Y')
|
|
.select('m/d/Y')
|
|
.should('have.value', 'm/d/Y')
|
|
|
|
cy.get('input[name="cyanine[gitPosition][top]"]')
|
|
.should('not.be.checked')
|
|
.and('not.be.visible')
|
|
.check({ force: true })
|
|
.should('be.checked')
|
|
|
|
cy.get('input[name="cyanine[gitLink]"]')
|
|
.clear()
|
|
.type('https://github.com/typemill/docs')
|
|
.should('have.value', 'https://github.com/typemill/docs')
|
|
|
|
|
|
cy.get('#theme-cyanine').submit()
|
|
cy.get('#flash-message').should('contain', 'Settings are stored')
|
|
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[introButtonLink]"]')
|
|
.should('have.value', 'https://typemill.net')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[introButtonLabel]"]')
|
|
.should('have.value', 'Typemill')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[chapnum]"]')
|
|
.should('be.checked')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[authorPosition][top]"]')
|
|
.should('be.checked')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[authorIntro]"]')
|
|
.should('have.value', 'Writer')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[datePosition][bottom]"]')
|
|
.should('be.checked')
|
|
|
|
// fill out valid data
|
|
cy.get('input[name="cyanine[dateIntro]"]')
|
|
.should('have.value', 'Final update')
|
|
|
|
cy.get('select[name="cyanine[dateFormat]"]')
|
|
.should('have.value', 'm/d/Y')
|
|
|
|
cy.get('input[name="cyanine[gitPosition][top]"]')
|
|
.should('be.checked')
|
|
|
|
cy.get('input[name="cyanine[gitLink]"]')
|
|
.should('have.value', 'https://github.com/typemill/docs')
|
|
|
|
})
|
|
|
|
it('validates input', function()
|
|
{
|
|
|
|
// open the form
|
|
cy.get('#cyanine-toggle')
|
|
.should('contain', 'Settings')
|
|
.click()
|
|
|
|
// fill out invalid data
|
|
cy.get('input[name="cyanine[introButtonLabel]"]')
|
|
.should('have.value', 'Typemill')
|
|
.clear()
|
|
.type('Kapitel<?')
|
|
.should('have.value', 'Kapitel<?')
|
|
|
|
// submit form
|
|
cy.get('#theme-cyanine').submit()
|
|
|
|
cy.get('#flash-message').should('contain', 'Please correct the errors')
|
|
|
|
})
|
|
}) |