Skip to content

Commit 2efb99c

Browse files
committed
add assert about lualib_bundle.lua outpath.
add test LuaLib recompile with bundling option.
1 parent d0ac73b commit 2efb99c

1 file changed

Lines changed: 25 additions & 6 deletions

File tree

test/transpile/lualib.spec.ts

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,32 +31,38 @@ test("Lualib bundle does not assign globals", () => {
3131
.expectNoExecutionError();
3232
});
3333

34-
test("Lualib bundle recompile", () => {
34+
test("Lualib recompile with import kind require", () => {
3535
const { transpiledFiles } = util.testExpression`Array.isArray({})`
3636
.setOptions({
3737
recompileLuaLib: true,
3838
luaPlugins: [{ name: path.join(__dirname, "./plugins/beforeEmit.ts") }],
3939
})
4040
.expectToHaveNoDiagnostics()
4141
.getLuaResult();
42-
const lualubBundle = transpiledFiles.find(f => path.basename(f.outPath) === "lualib_bundle.lua");
43-
expect(lualubBundle?.lua).toContain(
42+
const lualibBundle = transpiledFiles.find(f => f.outPath === "lualib_bundle.lua");
43+
expect(lualibBundle).toBeDefined();
44+
45+
// plugin apply twice: main compilation and lualib recompile
46+
expect(lualibBundle?.lua).toContain(
4447
"-- Comment added by beforeEmit plugin\n-- Comment added by beforeEmit plugin\n"
4548
);
4649
});
4750

48-
test("Lualib require minimal recompile", () => {
49-
util.testExpression`Array.isArray(123)`
51+
test("Lualib recompile with import kind require minimal", () => {
52+
const builder = util.testExpression`Array.isArray(123)`
5053
.setOptions({
5154
luaLibImport: LuaLibImportKind.RequireMinimal,
5255
recompileLuaLib: true,
5356
luaPlugins: [{ name: path.join(__dirname, "./plugins/visitor.ts") }],
5457
})
5558
.expectToHaveNoDiagnostics()
5659
.expectToEqual(true);
60+
const transpiledFiles = builder.getLuaResult().transpiledFiles;
61+
const lualibBundle = transpiledFiles.find(f => f.outPath === "lualib_bundle.lua");
62+
expect(lualibBundle).toBeDefined();
5763
});
5864

59-
test("Lualib inline recompile", () => {
65+
test("Lualib recompile with import kind inline", () => {
6066
util.testExpression`Array.isArray(123)`
6167
.setOptions({
6268
luaLibImport: LuaLibImportKind.Inline,
@@ -66,3 +72,16 @@ test("Lualib inline recompile", () => {
6672
.expectToHaveNoDiagnostics()
6773
.expectToEqual(true);
6874
});
75+
76+
test("Lualib recompile with bundling", () => {
77+
util.testExpression`Array.isArray(123)`
78+
.setOptions({
79+
luaBundle: "bundle.lua",
80+
luaBundleEntry: "main.ts",
81+
luaLibImport: LuaLibImportKind.RequireMinimal,
82+
recompileLuaLib: true,
83+
luaPlugins: [{ name: path.join(__dirname, "./plugins/visitor.ts") }],
84+
})
85+
.expectToHaveNoDiagnostics()
86+
.expectToEqual(true);
87+
});

0 commit comments

Comments
 (0)