Skip to content

Commit 9399cda

Browse files
authored
test(ssr): test ssrTransform re-export deps and test stacktrace with first line (#19629)
1 parent ed29dee commit 9399cda

File tree

4 files changed

+60
-0
lines changed

4 files changed

+60
-0
lines changed

packages/vite/src/node/ssr/__tests__/ssrTransform.spec.ts

+40
Original file line numberDiff line numberDiff line change
@@ -1531,3 +1531,43 @@ test('combine mappings', async () => {
15311531
`)
15321532
}
15331533
})
1534+
1535+
test('deps', async () => {
1536+
const result = await ssrTransformSimple(`\
1537+
import a from "a";
1538+
export { b } from "b";
1539+
export * from "c";
1540+
export * as d from "d";
1541+
import("e")
1542+
export * as A from "a";
1543+
`)
1544+
expect(result?.code).toMatchInlineSnapshot(`
1545+
"Object.defineProperty(__vite_ssr_exports__, "b", { enumerable: true, configurable: true, get(){ return __vite_ssr_import_1__.b }});
1546+
Object.defineProperty(__vite_ssr_exports__, "d", { enumerable: true, configurable: true, get(){ return __vite_ssr_import_3__ }});
1547+
Object.defineProperty(__vite_ssr_exports__, "A", { enumerable: true, configurable: true, get(){ return __vite_ssr_import_4__ }});
1548+
const __vite_ssr_import_0__ = await __vite_ssr_import__("a", {"importedNames":["default"]});
1549+
const __vite_ssr_import_1__ = await __vite_ssr_import__("b", {"importedNames":["b"]});
1550+
const __vite_ssr_import_2__ = await __vite_ssr_import__("c");__vite_ssr_exportAll__(__vite_ssr_import_2__);
1551+
1552+
const __vite_ssr_import_3__ = await __vite_ssr_import__("d");const __vite_ssr_import_4__ = await __vite_ssr_import__("a");
1553+
__vite_ssr_dynamic_import__("e");
1554+
1555+
"
1556+
`)
1557+
expect({
1558+
deps: result?.deps,
1559+
dynamicDeps: result?.dynamicDeps,
1560+
}).toMatchInlineSnapshot(`
1561+
{
1562+
"deps": [
1563+
"a",
1564+
"b",
1565+
"c",
1566+
"d",
1567+
],
1568+
"dynamicDeps": [
1569+
"e",
1570+
],
1571+
}
1572+
`)
1573+
})
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
// comment
2+
throw new Error('__TEST__')
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
throw new Error('__TEST__')

packages/vite/src/node/ssr/runtime/__tests__/server-source-maps.spec.ts

+17
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,23 @@ describe('module runner initialization', async () => {
6565
)
6666
})
6767

68+
it('stacktrace column on first line', async ({ runner, server }) => {
69+
// column is off by "use strict"
70+
const topLevelError = await getError(() =>
71+
runner.import('/fixtures/has-error-first.js'),
72+
)
73+
expect(serializeStack(server, topLevelError)).toBe(
74+
' at <root>/fixtures/has-error-first.js:1:18',
75+
)
76+
77+
const topLevelErrorTs = await getError(() =>
78+
runner.import('/fixtures/has-error-first-comment.ts'),
79+
)
80+
expect(serializeStack(server, topLevelErrorTs)).toBe(
81+
' at <root>/fixtures/has-error-first-comment.ts:2:17',
82+
)
83+
})
84+
6885
it('deep stacktrace', async ({ runner, server }) => {
6986
const methodError = await getError(async () => {
7087
const mod = await runner.import('/fixtures/has-error-deep.ts')

0 commit comments

Comments
 (0)