diff --git a/cypress/e2e/domains/edit-domain.cy.js b/cypress/e2e/domains/edit-domain.cy.js index 1b8e40734..47d22db96 100644 --- a/cypress/e2e/domains/edit-domain.cy.js +++ b/cypress/e2e/domains/edit-domain.cy.js @@ -5,6 +5,7 @@ let domainName let edgeAppName let domainEditedName +let digitalCertificateName const createEdgeApplicationCase = () => { // Arrange @@ -22,6 +23,41 @@ const createEdgeApplicationCase = () => { cy.get(selectors.domains.pageTitle(edgeAppName)).should('have.text', edgeAppName) } +const createDigitalCertificate = () => { + digitalCertificateName = generateUniqueName('digitalCertificate') + + cy.get(selectors.domains.digitalCertificatesDropdownLetsEncrypt).click() + cy.get(selectors.domains.createDigitalCertificateButton).click() + cy.get(selectors.digitalCertificates.digitalCertificateName).type(digitalCertificateName) + cy.get(selectors.digitalCertificates.generateCSRRadioOption).click() + cy.get(selectors.digitalCertificates.subjectNameInput).type( + `${digitalCertificateName}.example.com` + ) + cy.get(selectors.digitalCertificates.countryInput).type('BR') + cy.get(selectors.digitalCertificates.stateInput).type('São Paulo') + cy.get(selectors.digitalCertificates.cityInput).type('São Paulo') + cy.get(selectors.digitalCertificates.organizationInput).type(`${digitalCertificateName} S.A.`) + cy.get(selectors.digitalCertificates.organizationUnitInput).type('IT Department') + cy.get(selectors.digitalCertificates.emailInput).clear() + cy.get(selectors.digitalCertificates.emailInput).type(`${digitalCertificateName}@example.com`) + cy.get(selectors.digitalCertificates.sanTextarea).type(`${digitalCertificateName}.net`) + + cy.intercept('GET', '/api/v4/digital_certificates/certificates/*?fields=*').as('getDigitalCertificatesApi') + + // Act + cy.get(selectors.domains.digitalCertificateActionBar) + .find(selectors.form.actionsSubmitButton) + .click() + + // Assert + cy.verifyToast('success', 'Your digital certificate has been created!') + cy.wait('@getDigitalCertificatesApi') + + cy.get(selectors.domains.digitalCertificatesDropdownLetsEncrypt).should('have.text', digitalCertificateName) + cy.get(selectors.domains.digitalCertificatesDropdownLetsEncrypt).click() + cy.get(selectors.domains.letsEncryptDropdownOption).click() +} + describe('Domains spec', { tags: ['@dev3'] }, () => { beforeEach(() => { cy.login() @@ -69,6 +105,9 @@ describe('Domains spec', { tags: ['@dev3'] }, () => { cy.get(selectors.domains.fieldTextInput).type(domainEditedName) cy.get(selectors.domains.cnamesField).clear() cy.get(selectors.domains.cnamesField).type(`${domainName}-edit.net`) + + createDigitalCertificate() + cy.get(selectors.domains.domainUri).should('be.disabled') cy.get(selectors.domains.editFormCopyDomainButton).should('be.visible') cy.get(selectors.domains.activeSwitchEditForm).click() diff --git a/src/router/routes/domains-routes/index.js b/src/router/routes/domains-routes/index.js index 85b7aa240..57f7b4d16 100644 --- a/src/router/routes/domains-routes/index.js +++ b/src/router/routes/domains-routes/index.js @@ -72,7 +72,7 @@ export const domainsRoutes = { clipboardWrite: Helpers.clipboardWrite, listDigitalCertificatesService: DigitalCertificatesServicesV4.listDigitalCertificatesServiceDropdown, - loadDigitalCertificatesService: DigitalCertificatesServicesV4.loadDigitalCertificatesService + loadDigitalCertificatesService: DigitalCertificatesServicesV4.loadDigitalCertificateService }, meta: { breadCrumbs: [