@@ -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