/// /* globals cy, expect */ context('Create Job Offer Browser Testing', () => { let jobDate = '', jobTitle = 'Test Job Offer ', description = 'Test Description '; before(() => { cy.nextYear(1).then(year => { jobDate = year + '-12-31'; }); cy.randomNum().then(num => { jobTitle += num; description += num; }); cy.clearLocalStorage({ domain: null }); cy.clearCookies({ domain: null }); }); it('should visit user login screen', () => cy.userLogin()); describe('Job Offer Creation process', () => { it('should login', () => cy.login()); it('should visit the job offer creation screen', () => cy.naviagte('/job-offers/job-offers-create')); /*it('should enter incorrect job offer data', () => { cy.get('#job-offers-create input[name="closingDate"]').type('!"#$%&'); cy.get('#job-offers-create input[name="closingDate"]').should('have.value', '!"#$%&'); cy.get('#job-offers-create input[name="title"]').type('!"#$%&'); cy.get('#job-offers-create input[name="title"]').should('have.value', '!"#$%&'); cy.get('#job-offers-create textarea[name="description"]').type(description); cy.get('#job-offers-create textarea[name="description"]').should('have.value', description); }); it('should click on create job offer button', () => { cy.get('#job-offers-create input[type="submit"]').click(); }); it('should provide errors about incorrect job offer data', () => { // TO-DO: Check for error messages cy.get('element') .should('contain.text', 'Error message.'); });*/ it('should enter correct job offer data', () => { cy.get('#job-offers-create input[name="closingDate"]').clear().type(jobDate); cy.get('#job-offers-create input[name="closingDate"]').should('have.value', jobDate); cy.get('#job-offers-create input[name="title"]').clear().type(jobTitle); cy.get('#job-offers-create input[name="title"]').should('have.value', jobTitle); cy.get('#job-offers-create textarea[name="description"]').clear().type(description); cy.get('#job-offers-create textarea[name="description"]').should('have.value', description); }); it('should click on create job offer button', () => { cy.get('#job-offers-create input[type="submit"]').click(); }); it('should land on job offers list screen', () => { cy.location().should((loc) => { expect(loc.pathname).to.eq('/job-offers'); }); // Workaround - component reactivity bug cy.reload(); cy.get('.accept-button').click(); // End workaround }); it('should land newly created job offer on job offers list screen', () => { cy.contains('solid-display-value[name="title"]', jobTitle).should("exist"); cy.contains('solid-display-value[name="description"]', description).should("exist"); }); }); });