From 6cf97bfe5f01fa5e05020c0a2ca980b511f2f265 Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Fri, 28 Feb 2025 22:33:26 +0000 Subject: [PATCH] test: skip testing spa-preloader in dev --- .../spa-preloader-outside-disabled.test.ts | 47 +++++++++---------- .../spa-preloader-outside-enabled.test.ts | 46 ++++++++---------- 2 files changed, 41 insertions(+), 52 deletions(-) diff --git a/test/spa-loader/spa-preloader-outside-disabled.test.ts b/test/spa-loader/spa-preloader-outside-disabled.test.ts index 26101889c0..9f7f8525e5 100644 --- a/test/spa-loader/spa-preloader-outside-disabled.test.ts +++ b/test/spa-loader/spa-preloader-outside-disabled.test.ts @@ -1,8 +1,7 @@ import { fileURLToPath } from 'node:url' import { describe, expect, it } from 'vitest' import { isWindows } from 'std-env' -import { $fetch, createPage, fetch, setup, url } from '@nuxt/test-utils/e2e' -import { expectWithPolling } from '../utils' +import { $fetch, createPage, setup, url } from '@nuxt/test-utils/e2e' const isWebpack = process.env.TEST_BUILDER === 'webpack' || @@ -10,25 +9,24 @@ const isWebpack = const isDev = process.env.TEST_ENV === 'dev' -await setup({ - rootDir: fileURLToPath(new URL('../fixtures/spa-loader', import.meta.url)), - dev: isDev, - server: true, - browser: true, - setupTimeout: (isWindows ? 360 : 120) * 1000, - nuxtConfig: { - builder: isWebpack ? 'webpack' : 'vite', - spaLoadingTemplate: true, - experimental: { - spaLoadingTemplateLocation: 'within', +if (!isDev) { + await setup({ + rootDir: fileURLToPath(new URL('../fixtures/spa-loader', import.meta.url)), + dev: isDev, + server: true, + browser: true, + setupTimeout: (isWindows ? 360 : 120) * 1000, + nuxtConfig: { + builder: isWebpack ? 'webpack' : 'vite', + spaLoadingTemplate: true, + experimental: { + spaLoadingTemplateLocation: 'within', + }, }, - }, -}) - -describe('spaLoadingTemplateLocation flag is set to `within`', () => { - it.runIf(isDev)('should load dev server', async () => { - await expectWithPolling(() => fetch('/').then(r => r.status === 200).catch(() => null), true) }) +} + +describe.skipIf(isDev)('spaLoadingTemplateLocation flag is set to `within`', () => { it('should render loader inside appTag', async () => { const html = await $fetch('/spa') expect(html).toContain(`
loading...
`) @@ -38,17 +36,14 @@ describe('spaLoadingTemplateLocation flag is set to `within`', () => { const page = await createPage() await page.goto(url('/spa')) - const loader = page.getByTestId('loader') - const content = page.getByTestId('content') - - await loader.waitFor({ state: 'visible' }) - expect(await content.isHidden()).toBeTruthy() + await page.getByTestId('loader').waitFor({ state: 'visible' }) + expect(await page.getByTestId('content').isHidden()).toBeTruthy() await page.waitForFunction(() => window.useNuxtApp?.() && window.useNuxtApp?.().isHydrating) - expect(await content.isHidden()).toBeTruthy() + expect(await page.getByTestId('content').isHidden()).toBeTruthy() - await content.waitFor({ state: 'visible' }) + await page.getByTestId('content').waitFor({ state: 'visible' }) await page.close() }, 60_000) diff --git a/test/spa-loader/spa-preloader-outside-enabled.test.ts b/test/spa-loader/spa-preloader-outside-enabled.test.ts index 1562f060a5..a5fd89f625 100644 --- a/test/spa-loader/spa-preloader-outside-enabled.test.ts +++ b/test/spa-loader/spa-preloader-outside-enabled.test.ts @@ -1,44 +1,38 @@ import { fileURLToPath } from 'node:url' import { describe, expect, it } from 'vitest' import { isWindows } from 'std-env' -import { createPage, fetch, setup, url } from '@nuxt/test-utils/e2e' +import { createPage, setup, url } from '@nuxt/test-utils/e2e' import type { Page } from 'playwright-core' -import { expectWithPolling } from '../utils' const isWebpack = process.env.TEST_BUILDER === 'webpack' || process.env.TEST_BUILDER === 'rspack' const isDev = process.env.TEST_ENV === 'dev' -await setup({ - rootDir: fileURLToPath(new URL('../fixtures/spa-loader', import.meta.url)), - dev: isDev, - server: true, - browser: true, - setupTimeout: (isWindows ? 360 : 120) * 1000, - nuxtConfig: { - builder: isWebpack ? 'webpack' : 'vite', - spaLoadingTemplate: true, - experimental: { - spaLoadingTemplateLocation: 'body', +if (!isDev) { + await setup({ + rootDir: fileURLToPath(new URL('../fixtures/spa-loader', import.meta.url)), + server: true, + browser: true, + setupTimeout: (isWindows ? 360 : 120) * 1000, + nuxtConfig: { + builder: isWebpack ? 'webpack' : 'vite', + spaLoadingTemplate: true, + experimental: { + spaLoadingTemplateLocation: 'body', + }, }, - }, -}) - -describe('spaLoadingTemplateLocation flag is set to `body`', () => { - it.runIf(isDev)('should load dev server', async () => { - await expectWithPolling(() => fetch('/').then(r => r.status === 200).catch(() => null), true) }) +} + +describe.skipIf(isDev)('spaLoadingTemplateLocation flag is set to `body`', () => { it('should render spa-loader', async () => { const page = await createPage() await page.goto(url('/spa'), { waitUntil: 'domcontentloaded' }) - const loader = page.getByTestId('loader') - const content = page.getByTestId('content') + await page.getByTestId('loader').waitFor({ state: 'visible' }) + expect(await page.getByTestId('content').isHidden()).toBeTruthy() - await loader.waitFor({ state: 'visible' }) - expect(await content.isHidden()).toBeTruthy() - - await content.waitFor({ state: 'visible' }) - expect(await loader.isHidden()).toBeTruthy() + await page.getByTestId('content').waitFor({ state: 'visible' }) + expect(await page.getByTestId('loader').isHidden()).toBeTruthy() await page.close() }, 60_000)