@@ -87,6 +87,37 @@ test("doesn't resolve paths out of root dir", () => {
8787 . expectDiagnosticsToMatchSnapshot ( [ couldNotResolveRequire . code ] ) ;
8888} ) ;
8989
90+ test ( "resolves non-standard requires" , ( ) => {
91+ const { transpiledFiles } = util . testModule `
92+ export * from "./externalLua";
93+ `
94+ . addExtraFile ( "externalLua.d.ts" , "export const foo = 3;" )
95+ . addExtraFile (
96+ "externalLua.lua" ,
97+ `
98+ require("requiredLuaFile1") -- standard
99+ require('requiredLuaFile2') -- single quote
100+ require'requiredLuaFile3' -- no parentheses
101+ require"requiredLuaFile4" -- no parentheses double quote
102+ require "requiredLuaFile5" -- no parentheses and space
103+ require "requiredLua'File6" -- no parentheses and space
104+ require 'requiredLua"File7' -- no parentheses and space
105+ `
106+ )
107+ . addExtraFile ( "requiredLuaFile1.lua" , "" )
108+ . addExtraFile ( "requiredLuaFile2.lua" , "" )
109+ . addExtraFile ( "requiredLuaFile3.lua" , "" )
110+ . addExtraFile ( "requiredLuaFile4.lua" , "" )
111+ . addExtraFile ( "requiredLuaFile5.lua" , "" )
112+ . addExtraFile ( "requiredLua'File6.lua" , "" )
113+ . addExtraFile ( 'requiredLua"File7.lua' , "" )
114+ . expectToHaveNoDiagnostics ( )
115+ . getLuaResult ( ) ;
116+
117+ // Expect main.lua, externalLua.lua and all 7 required lua files in there
118+ expect ( transpiledFiles . map ( f => f . outPath ) ) . toHaveLength ( 9 ) ;
119+ } ) ;
120+
90121test . each ( [
91122 {
92123 declarationStatement : `
0 commit comments