From 89f3774c062848267e689c7626a9608d99425124 Mon Sep 17 00:00:00 2001 From: Mark Noonan Date: Fri, 2 Dec 2022 16:41:04 -0500 Subject: [PATCH] fix: bring back initial loading spinner in launchpad (#24922) --- .../frontend-shared/src/locales/en-US.json | 2 +- .../launchpad/cypress/e2e/open-mode.cy.ts | 17 ++++++ packages/launchpad/index.html | 61 ++++++++++++++++++- packages/launchpad/src/Main.vue | 1 + 4 files changed, 78 insertions(+), 3 deletions(-) diff --git a/packages/frontend-shared/src/locales/en-US.json b/packages/frontend-shared/src/locales/en-US.json index 46a7a1378b..014f02f053 100644 --- a/packages/frontend-shared/src/locales/en-US.json +++ b/packages/frontend-shared/src/locales/en-US.json @@ -774,7 +774,7 @@ "openBrowser": { "startComponent": "Start Component Testing in {browser}", "startE2E": "Start E2E Testing in {browser}", - "openingComponent": "Opening component testing in {browser}", + "openingComponent": "Opening Component Testing in {browser}", "openingE2E": "Opening E2E Testing in {browser}", "running": "Running {browser}", "focus": "Focus", diff --git a/packages/launchpad/cypress/e2e/open-mode.cy.ts b/packages/launchpad/cypress/e2e/open-mode.cy.ts index fbc4bebc19..ae5eb7cb64 100644 --- a/packages/launchpad/cypress/e2e/open-mode.cy.ts +++ b/packages/launchpad/cypress/e2e/open-mode.cy.ts @@ -4,6 +4,23 @@ import { MAJOR_VERSION_FOR_CONTENT } from '@packages/types/src' describe('Launchpad: Open Mode', () => { describe('global mode', () => { + it('shows a loading spinner before application mounts, and cleans up after mount', () => { + cy.openGlobalMode() + + // Since these elements are removed when JS runs and the app mounts, + // they are gone by the time Cypress can assert about them + // but we can still make sure they are provided in the HTML payload + cy.request(`/__launchpad/index.html`) + .should(({ body }) => { + expect(body.includes('data-cy="plain-html-loading-spinner"')).to.be.true + expect(body.includes('data-cy="plain-html-spinner-styles"')).to.be.true + }) + + cy.visitLaunchpad() + cy.findByTestId('plain-html-loading-spinner').should('not.exist') + cy.findByTestId('plain-html-spinner-styles').should('not.exist') + }) + it('shows Add Project when no projects have been added', () => { cy.openGlobalMode() cy.visitLaunchpad() diff --git a/packages/launchpad/index.html b/packages/launchpad/index.html index 4b60695202..e89dcbec02 100644 --- a/packages/launchpad/index.html +++ b/packages/launchpad/index.html @@ -1,11 +1,68 @@ + Cypress + + -
+
+ + +
+ +
+
- + + \ No newline at end of file diff --git a/packages/launchpad/src/Main.vue b/packages/launchpad/src/Main.vue index fb4efd0c9a..cf4cfebf7b 100644 --- a/packages/launchpad/src/Main.vue +++ b/packages/launchpad/src/Main.vue @@ -75,6 +75,7 @@ +