From 7c1d50a1bc0ad10d40b4fa716fb0903de277d4ab Mon Sep 17 00:00:00 2001 From: Tim Neutkens Date: Thu, 11 Jan 2024 13:26:18 +0100 Subject: [PATCH] Revert "Revert "Skip webpack loader test in Turbopack"" (#60514) Reverts vercel/next.js#60513 Closes NEXT-2056 --- .../ReactRefreshRegression.test.ts | 76 ++++++++-------- .../acceptance/ReactRefreshRegression.test.ts | 90 ++++++++++--------- 2 files changed, 89 insertions(+), 77 deletions(-) diff --git a/test/development/acceptance-app/ReactRefreshRegression.test.ts b/test/development/acceptance-app/ReactRefreshRegression.test.ts index 00ee9d6a79..77957ad467 100644 --- a/test/development/acceptance-app/ReactRefreshRegression.test.ts +++ b/test/development/acceptance-app/ReactRefreshRegression.test.ts @@ -335,11 +335,15 @@ describe('ReactRefreshRegression app', () => { }) // https://github.com/vercel/next.js/issues/13574 - test('custom loader mdx should have Fast Refresh enabled', async () => { - const files = new Map() - files.set( - 'next.config.js', - outdent` + // Test is skipped with Turbopack as the package uses webpack loaders + ;(process.env.TURBOPACK ? describe.skip : describe)( + 'Turbopack skipped tests', + () => { + test('custom loader mdx should have Fast Refresh enabled', async () => { + const files = new Map() + files.set( + 'next.config.js', + outdent` const withMDX = require("@next/mdx")({ extension: /\\.mdx?$/, }); @@ -347,44 +351,46 @@ describe('ReactRefreshRegression app', () => { pageExtensions: ["js", "mdx"], }); ` - ) - files.set('app/content.mdx', `Hello World!`) - files.set( - 'app/page.js', - outdent` + ) + files.set('app/content.mdx', `Hello World!`) + files.set( + 'app/page.js', + outdent` 'use client' import MDX from './content.mdx' export default function Page() { return
} ` - ) + ) - const { session, cleanup } = await sandbox(next, files) - expect( - await session.evaluate( - () => document.querySelector('#content').textContent - ) - ).toBe('Hello World!') + const { session, cleanup } = await sandbox(next, files) + expect( + await session.evaluate( + () => document.querySelector('#content').textContent + ) + ).toBe('Hello World!') - let didNotReload = await session.patch('app/content.mdx', `Hello Foo!`) - expect(didNotReload).toBe(true) - expect(await session.hasRedbox(false)).toBe(false) - expect( - await session.evaluate( - () => document.querySelector('#content').textContent - ) - ).toBe('Hello Foo!') + let didNotReload = await session.patch('app/content.mdx', `Hello Foo!`) + expect(didNotReload).toBe(true) + expect(await session.hasRedbox(false)).toBe(false) + expect( + await session.evaluate( + () => document.querySelector('#content').textContent + ) + ).toBe('Hello Foo!') - didNotReload = await session.patch('app/content.mdx', `Hello Bar!`) - expect(didNotReload).toBe(true) - expect(await session.hasRedbox(false)).toBe(false) - expect( - await session.evaluate( - () => document.querySelector('#content').textContent - ) - ).toBe('Hello Bar!') + didNotReload = await session.patch('app/content.mdx', `Hello Bar!`) + expect(didNotReload).toBe(true) + expect(await session.hasRedbox(false)).toBe(false) + expect( + await session.evaluate( + () => document.querySelector('#content').textContent + ) + ).toBe('Hello Bar!') - await cleanup() - }) + await cleanup() + }) + } + ) }) diff --git a/test/development/acceptance/ReactRefreshRegression.test.ts b/test/development/acceptance/ReactRefreshRegression.test.ts index 9f295a0c32..3f9ff0ea3e 100644 --- a/test/development/acceptance/ReactRefreshRegression.test.ts +++ b/test/development/acceptance/ReactRefreshRegression.test.ts @@ -295,49 +295,55 @@ describe('ReactRefreshRegression', () => { }) // https://github.com/vercel/next.js/issues/13574 - test('custom loader (mdx) should have Fast Refresh enabled', async () => { - const { session, cleanup } = await sandbox( - next, - new Map([ - [ - 'next.config.js', - outdent` - const withMDX = require("@next/mdx")({ - extension: /\\.mdx?$/, - }); - module.exports = withMDX({ - pageExtensions: ["js", "mdx"], - }); - `, - ], - ['pages/mdx.mdx', `Hello World!`], - ]), - '/mdx' - ) - expect( - await session.evaluate( - () => document.querySelector('#__next').textContent - ) - ).toBe('Hello World!') + // Test is skipped with Turbopack as the package uses webpack loaders + ;(process.env.TURBOPACK ? describe.skip : describe)( + 'Turbopack skipped tests', + () => { + test('custom loader (mdx) should have Fast Refresh enabled', async () => { + const { session, cleanup } = await sandbox( + next, + new Map([ + [ + 'next.config.js', + outdent` + const withMDX = require("@next/mdx")({ + extension: /\\.mdx?$/, + }); + module.exports = withMDX({ + pageExtensions: ["js", "mdx"], + }); + `, + ], + ['pages/mdx.mdx', `Hello World!`], + ]), + '/mdx' + ) + expect( + await session.evaluate( + () => document.querySelector('#__next').textContent + ) + ).toBe('Hello World!') - let didNotReload = await session.patch('pages/mdx.mdx', `Hello Foo!`) - expect(didNotReload).toBe(true) - expect(await session.hasRedbox(false)).toBe(false) - expect( - await session.evaluate( - () => document.querySelector('#__next').textContent - ) - ).toBe('Hello Foo!') + let didNotReload = await session.patch('pages/mdx.mdx', `Hello Foo!`) + expect(didNotReload).toBe(true) + expect(await session.hasRedbox(false)).toBe(false) + expect( + await session.evaluate( + () => document.querySelector('#__next').textContent + ) + ).toBe('Hello Foo!') - didNotReload = await session.patch('pages/mdx.mdx', `Hello Bar!`) - expect(didNotReload).toBe(true) - expect(await session.hasRedbox(false)).toBe(false) - expect( - await session.evaluate( - () => document.querySelector('#__next').textContent - ) - ).toBe('Hello Bar!') + didNotReload = await session.patch('pages/mdx.mdx', `Hello Bar!`) + expect(didNotReload).toBe(true) + expect(await session.hasRedbox(false)).toBe(false) + expect( + await session.evaluate( + () => document.querySelector('#__next').textContent + ) + ).toBe('Hello Bar!') - await cleanup() - }) + await cleanup() + }) + } + ) })