mirror of
https://github.com/vercel/next.js.git
synced 2026-09-20 02:25:18 +08:00
9b8a7a1055
1. Align the code highlight marker color with the issue severity 2. Make the issue title colored 3. Prefix issues with `Warning` or `Error` <img width="1383" height="862" alt="Bildschirmfoto 2026-06-16 um 18 59 03" src="https://github.com/user-attachments/assets/f98c606d-4ea8-40c2-836d-e395f1df904c" /> <img width="1039" height="450" alt="Bildschirmfoto 2026-06-16 um 19 03 39" src="https://github.com/user-attachments/assets/2747f914-0587-4178-a87d-344f24715c96" /> <details> <summary>Old</summary> <img width="1267" height="745" alt="Bildschirmfoto 2026-06-16 um 17 04 35" src="https://github.com/user-attachments/assets/837739ff-82f7-4ea2-8767-ca7d866a8570" /> </details>
98 lines
3.5 KiB
TypeScript
98 lines
3.5 KiB
TypeScript
import { createSandbox } from 'development-sandbox'
|
||
import { FileRef, nextTestSetup } from 'e2e-utils'
|
||
import path from 'path'
|
||
import { outdent } from 'outdent'
|
||
|
||
describe('ReactRefreshLogBox app', () => {
|
||
const { isTurbopack, next, isRspack } = nextTestSetup({
|
||
files: new FileRef(path.join(__dirname, 'fixtures', 'default-template')),
|
||
skipStart: true,
|
||
})
|
||
|
||
test('server-side only compilation errors', async () => {
|
||
await using sandbox = await createSandbox(next)
|
||
const { browser, session } = sandbox
|
||
|
||
await session.patch(
|
||
'app/page.js',
|
||
outdent`
|
||
'use client'
|
||
import myLibrary from 'my-non-existent-library'
|
||
export async function getStaticProps() {
|
||
return {
|
||
props: {
|
||
result: myLibrary()
|
||
}
|
||
}
|
||
}
|
||
export default function Hello(props) {
|
||
return <h1>{props.result}</h1>
|
||
}
|
||
`
|
||
)
|
||
|
||
if (isTurbopack) {
|
||
await expect(browser).toDisplayRedbox(`
|
||
{
|
||
"description": ""getStaticProps" is not supported in app/. Read more: https://nextjs.org/docs/app/building-your-application/data-fetching",
|
||
"environmentLabel": null,
|
||
"label": "Build Error",
|
||
"source": "./app/page.js (3:23)
|
||
Error: "getStaticProps" is not supported in app/. Read more: https://nextjs.org/docs/app/building-your-application/data-fetching
|
||
> 3 | export async function getStaticProps() {
|
||
| ^^^^^^^^^^^^^^",
|
||
"stack": [],
|
||
}
|
||
`)
|
||
} else if (isRspack) {
|
||
await expect(browser).toDisplayRedbox(`
|
||
{
|
||
"description": " ╰─▶ × Error: x "getStaticProps" is not supported in app/. Read more: https://nextjs.org/docs/app/building-your-application/data-fetching",
|
||
"environmentLabel": null,
|
||
"label": "Build Error",
|
||
"source": "./app/page.js
|
||
╰─▶ × Error: x "getStaticProps" is not supported in app/. Read more: https://nextjs.org/docs/app/building-your-application/data-fetching
|
||
│ |
|
||
│
|
||
│ ,-[3:1]
|
||
│ 1 | 'use client'
|
||
│ 2 | import myLibrary from 'my-non-existent-library'
|
||
│ 3 | export async function getStaticProps() {
|
||
│ : ^^^^^^^^^^^^^^
|
||
│ 4 | return {
|
||
│ 5 | props: {
|
||
│ 6 | result: myLibrary()
|
||
│ \`----
|
||
│
|
||
Import trace for requested module:
|
||
./app/page.js",
|
||
"stack": [],
|
||
}
|
||
`)
|
||
} else {
|
||
await expect(browser).toDisplayRedbox(`
|
||
{
|
||
"description": " x "getStaticProps" is not supported in app/. Read more: https://nextjs.org/docs/app/building-your-application/data-fetching",
|
||
"environmentLabel": null,
|
||
"label": "Build Error",
|
||
"source": "./app/page.js
|
||
Error: x "getStaticProps" is not supported in app/. Read more: https://nextjs.org/docs/app/building-your-application/data-fetching
|
||
|
|
||
,-[3:1]
|
||
1 | 'use client'
|
||
2 | import myLibrary from 'my-non-existent-library'
|
||
3 | export async function getStaticProps() {
|
||
: ^^^^^^^^^^^^^^
|
||
4 | return {
|
||
5 | props: {
|
||
6 | result: myLibrary()
|
||
\`----
|
||
Import trace for requested module:
|
||
./app/page.js",
|
||
"stack": [],
|
||
}
|
||
`)
|
||
}
|
||
})
|
||
})
|