diff --git a/test/production/standalone-mode/required-server-files/required-server-files-app.test.ts b/test/production/standalone-mode/required-server-files/required-server-files-app.test.ts index e2f45d7a2a..35e9aa9384 100644 --- a/test/production/standalone-mode/required-server-files/required-server-files-app.test.ts +++ b/test/production/standalone-mode/required-server-files/required-server-files-app.test.ts @@ -91,10 +91,6 @@ describe('required server files app router', () => { cwd: next.testDir, } ) - - if (process.platform === 'darwin') { - appPort = `http://127.0.0.1:${appPort}` - } } beforeAll(async () => { diff --git a/test/production/standalone-mode/required-server-files/required-server-files-i18n.test.ts b/test/production/standalone-mode/required-server-files/required-server-files-i18n.test.ts index 941bd06e3b..22af48ce4b 100644 --- a/test/production/standalone-mode/required-server-files/required-server-files-i18n.test.ts +++ b/test/production/standalone-mode/required-server-files/required-server-files-i18n.test.ts @@ -128,10 +128,6 @@ describe('required server files i18n', () => { }, } ) - - if (process.platform === 'darwin') { - appPort = `http://127.0.0.1:${appPort}` - } }) afterAll(async () => { diff --git a/test/production/standalone-mode/required-server-files/required-server-files-ppr.test.ts b/test/production/standalone-mode/required-server-files/required-server-files-ppr.test.ts index d3a3fcc1a9..e0682a795a 100644 --- a/test/production/standalone-mode/required-server-files/required-server-files-ppr.test.ts +++ b/test/production/standalone-mode/required-server-files/required-server-files-ppr.test.ts @@ -101,10 +101,6 @@ describe('required server files app router', () => { cwd: next.testDir, } ) - - if (process.platform === 'darwin') { - appPort = `http://127.0.0.1:${appPort}` - } } beforeAll(async () => { diff --git a/test/production/standalone-mode/required-server-files/required-server-files.test.ts b/test/production/standalone-mode/required-server-files/required-server-files.test.ts index 7f457ce3c8..1d99d8f7af 100644 --- a/test/production/standalone-mode/required-server-files/required-server-files.test.ts +++ b/test/production/standalone-mode/required-server-files/required-server-files.test.ts @@ -24,14 +24,9 @@ describe('required server files', () => { let errors = [] let stderr = '' let requiredFilesManifest + let minimalMode = true - const setupNext = async ({ - nextEnv, - minimalMode, - }: { - nextEnv?: boolean - minimalMode?: boolean - }) => { + const setupNext = async ({ nextEnv }: { nextEnv?: boolean }) => { // test build against environment with next support process.env.NOW_BUILDER = nextEnv ? '1' : '' @@ -109,18 +104,31 @@ describe('required server files', () => { await fs.remove(join(next.testDir, '.next/server', file)) } } + } + + beforeAll(async () => { + await setupNext({ nextEnv: true }) + }) + + beforeEach(async () => { + errors = [] + stderr = '' + + const testServerFilename = join(next.testDir, 'standalone/server.js') + const testServerContent = await fs.readFile(testServerFilename, 'utf8') - const testServer = join(next.testDir, 'standalone/server.js') await fs.writeFile( - testServer, - (await fs.readFile(testServer, 'utf8')).replace( - 'port:', - `minimalMode: ${minimalMode},port:` + testServerFilename, + testServerContent.replace( + /(startServer\({\s*)(minimalMode: (true|false),\n {2})?/, + `$1minimalMode: ${minimalMode},\n ` ) ) + appPort = await findPort() + server = await initNextServerScript( - testServer, + testServerFilename, /- Local:/, { ...process.env, @@ -136,24 +144,14 @@ describe('required server files', () => { }, } ) - - if (process.platform === 'darwin') { - appPort = `http://127.0.0.1:${appPort}` - } - } - - beforeAll(async () => { - await setupNext({ nextEnv: true, minimalMode: true }) }) - beforeEach(() => { - errors = [] - stderr = '' + afterEach(async () => { + await killApp(server) }) afterAll(async () => { await next.destroy() - if (server) await killApp(server) }) it('should resolve correctly when a redirect is returned', async () => { @@ -1279,51 +1277,29 @@ describe('required server files', () => { expect(envVariables.envFromHost).toBe('FOOBAR') }) - // FIXME: update to not mutate the global state - it('should run middleware correctly (without minimalMode, with wasm)', async () => { - const standaloneDir = join(next.testDir, 'standalone') + describe('without minimalMode, with wasm', () => { + beforeAll(() => { + minimalMode = false + }) - const testServer = join(standaloneDir, 'server.js') - await fs.writeFile( - testServer, - (await fs.readFile(testServer, 'utf8')).replace( - 'minimalMode: true', - 'minimalMode: false' + it('should run middleware correctly', async () => { + const standaloneDir = join(next.testDir, 'standalone') + const res = await fetchViaHTTP(appPort, '/') + expect(res.status).toBe(200) + expect(await res.text()).toContain('index page') + + expect( + fs.existsSync(join(standaloneDir, '.next/server/edge-chunks')) + ).toBe(true) + + const resImageResponse = await fetchViaHTTP( + appPort, + '/a-non-existent-page/to-test-with-middleware' ) - ) - appPort = await findPort() - server = await initNextServerScript( - testServer, - /- Local:/, - { - ...process.env, - PORT: `${appPort}`, - }, - undefined, - { - cwd: next.testDir, - onStderr(msg) { - errors.push(msg) - stderr += msg - }, - } - ) - const res = await fetchViaHTTP(appPort, '/') - expect(res.status).toBe(200) - expect(await res.text()).toContain('index page') - - expect(fs.existsSync(join(standaloneDir, '.next/server/edge-chunks'))).toBe( - true - ) - - const resImageResponse = await fetchViaHTTP( - appPort, - '/a-non-existent-page/to-test-with-middleware' - ) - - expect(resImageResponse.status).toBe(200) - expect(resImageResponse.headers.get('content-type')).toBe('image/png') + expect(resImageResponse.status).toBe(200) + expect(resImageResponse.headers.get('content-type')).toBe('image/png') + }) }) it('should correctly handle a mismatch in buildIds when normalizing next data', async () => { diff --git a/test/turbopack-build-tests-manifest.json b/test/turbopack-build-tests-manifest.json index 26cd246d94..0f49ccf836 100644 --- a/test/turbopack-build-tests-manifest.json +++ b/test/turbopack-build-tests-manifest.json @@ -16054,11 +16054,11 @@ "required server files should resolve correctly when a redirect is returned", "required server files should return data correctly with x-matched-path", "required server files should return data correctly with x-matched-path for optional catch-all route", - "required server files should run middleware correctly (without minimalMode, with wasm)", "required server files should set correct SWR headers with notFound gsp", "required server files should set correct SWR headers with notFound gssp", "required server files should show invariant when an automatic static page is requested", - "required server files should warn when \"next\" is imported directly" + "required server files should warn when \"next\" is imported directly", + "required server files without minimalMode, with wasm should run middleware correctly" ], "pending": [], "flakey": [],