diff --git a/test/e2e/app-dir/app/pages/gsp.js b/test/e2e/app-dir/app/pages/gsp.js
deleted file mode 100644
index 28094d7e6be1f..0000000000000
--- a/test/e2e/app-dir/app/pages/gsp.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import useSWR from 'swr'
-
-console.log(useSWR)
-
-export default function Home() {
- return
Hello
-}
-
-export async function getStaticProps() {
- return {
- props: {
- foo: 'bar',
- },
- }
-}
diff --git a/test/e2e/app-dir/app/standalone-gsp.test.ts b/test/e2e/app-dir/app/standalone-gsp.test.ts
new file mode 100644
index 0000000000000..99a281078ac58
--- /dev/null
+++ b/test/e2e/app-dir/app/standalone-gsp.test.ts
@@ -0,0 +1,88 @@
+import { createNextDescribe } from 'e2e-utils'
+import fs from 'fs-extra'
+import os from 'os'
+import path from 'path'
+import {
+ findPort,
+ initNextServerScript,
+ killApp,
+ fetchViaHTTP,
+} from 'next-test-utils'
+
+if (!(globalThis as any).isNextStart) {
+ it('should skip for non-next start', () => {})
+} else {
+ createNextDescribe(
+ 'output: standalone with getStaticProps',
+ {
+ files: __dirname,
+ skipStart: true,
+ dependencies: {
+ swr: 'latest',
+ },
+ },
+ ({ next }) => {
+ beforeAll(async () => {
+ await next.patchFile(
+ 'next.config.js',
+ (await next.readFile('next.config.js')).replace('// output', 'output')
+ )
+
+ await next.patchFile(
+ 'pages/gsp.js',
+ `
+ import useSWR from 'swr'
+
+ console.log(useSWR)
+
+ export default function Home() {
+ return Hello
+ }
+
+ export async function getStaticProps() {
+ return {
+ props: {
+ foo: "bar",
+ },
+ };
+ }
+ `
+ )
+
+ await next.start()
+ })
+
+ it('should work correctly with output standalone', async () => {
+ const tmpFolder = path.join(
+ os.tmpdir(),
+ 'next-standalone-' + Date.now()
+ )
+ await fs.move(path.join(next.testDir, '.next/standalone'), tmpFolder)
+ let server: any
+
+ try {
+ const testServer = path.join(tmpFolder, 'server.js')
+ const appPort = await findPort()
+ server = await initNextServerScript(
+ testServer,
+ /- Local:/,
+ {
+ ...process.env,
+ PORT: appPort.toString(),
+ },
+ undefined,
+ {
+ cwd: tmpFolder,
+ }
+ )
+
+ const res = await fetchViaHTTP(appPort, '/gsp')
+ expect(res.status).toBe(200)
+ } finally {
+ if (server) await killApp(server)
+ await fs.remove(tmpFolder)
+ }
+ })
+ }
+ )
+}
diff --git a/test/e2e/app-dir/app/standalone.test.ts b/test/e2e/app-dir/app/standalone.test.ts
index 2f351454baebc..b907e06bca184 100644
--- a/test/e2e/app-dir/app/standalone.test.ts
+++ b/test/e2e/app-dir/app/standalone.test.ts
@@ -17,9 +17,6 @@ if (!(globalThis as any).isNextStart) {
{
files: __dirname,
skipStart: true,
- dependencies: {
- swr: 'latest',
- },
},
({ next }) => {
beforeAll(async () => {
@@ -93,7 +90,6 @@ if (!(globalThis as any).isNextStart) {
'/dashboard/hello',
'/dashboard/project/123',
'/catch-all/first',
- '/gsp',
]) {
const res = await fetchViaHTTP(appPort, testPath)
expect(res.status).toBe(200)