|
- import getFormValues from '../../src'
- import * as utils from '../../test/utils';
-
- describe('everything template', () => {
- beforeEach(utils.setup('everything'))
-
- it('should have correct form values', () => {
- utils.test(
- (cy) => {
- cy.get('[name="first_name"]').type('John')
- cy.get('[name="middle_name"]').type('Marcelo')
- cy.get('[name="last_name"]').type('Dela Cruz')
- cy.get('[name="gender"][value="m"]').check()
- cy.get('[name="civil_status"]').select('Married')
- cy.get('[name="new_registration"]').check()
- cy.get('[name="nationality"][value="filipino"]').check()
- cy.get('[name="dependent"][value="Jun"]').check()
-
- // Note: JSDOM is static for now
- cy.get('button.dependents').click()
- cy.get('.additional-dependent [name="dependent"][type="text"]').last().type('Juana')
- cy.get('button.dependents').click()
- cy.get('.additional-dependent [name="dependent"][type="text"]').last().type('Jane')
- cy.get('button.dependents').click()
- cy.get('.additional-dependent [name="dependent"][type="text"]').last().type('Josh')
-
- cy.get('[name="notes"]').type('Test content\n\nNew line\n\nAnother line')
- return cy.get('[name="submit"][value="Hi"]')
- },
- (form: HTMLFormElement, submitter: any, search: any) => {
- const before = utils.makeSearchParams(getFormValues(form, {submitter})).toString();
- const after = utils.makeSearchParams(search).toString();
- expect(before).toEqual(after);
- },
- 'first_name=John&middle_name=Marcelo&last_name=Dela+Cruz&gender=m&civil_status=married&new_registration=on&nationality=filipino&dependent=Jun¬es=Test+content%0D%0A%0D%0ANew+line%0D%0A%0D%0AAnother+line&submit=Hi',
- );
- });
- })
|