File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -4,7 +4,10 @@ import createEsmUtils from 'esm-utils';
44const { __dirname } = createEsmUtils ( import . meta) ;
55
66export default {
7- entry : './tests/integration/test-app.js' ,
7+ entry : {
8+ test : './tests/integration/test-app.js' ,
9+ 'create-parser' : './src/slang-utils/create-parser.js'
10+ } ,
811 mode : 'production' ,
912 bail : true ,
1013
@@ -13,14 +16,29 @@ export default {
1316
1417 externals : { 'fs/promises' : 'import fs/promises' } ,
1518
19+ resolve : {
20+ extensions : [ '.ts' , '.js' ] ,
21+ extensionAlias : { '.js' : [ '.js' , '.ts' ] }
22+ } ,
23+
24+ module : {
25+ rules : [
26+ {
27+ test : / \. t s $ / ,
28+ use : 'ts-loader' ,
29+ exclude : / n o d e _ m o d u l e s /
30+ }
31+ ]
32+ } ,
33+
1634 experiments : {
1735 asyncWebAssembly : true ,
1836 topLevelAwait : true ,
1937 outputModule : true
2038 } ,
2139
2240 output : {
23- filename : 'test .js' ,
41+ filename : '[name] .js' ,
2442 path : path . resolve ( __dirname , 'dist' ) ,
2543 library : { type : 'module' }
2644 } ,
Original file line number Diff line number Diff line change 1+ function getCreateParserInternal ( ) {
2+ const entry = process . env . TEST_STANDALONE
3+ ? "../../dist/create-parser.js"
4+ : "../../src/slang-utils/create-parser.js" ;
5+
6+ return import ( entry ) . then ( ( module ) => module . createParser ) ;
7+ }
8+
9+ let promise ;
10+ function getCreateParser ( ) {
11+ promise = promise ?? getCreateParserInternal ( ) ;
12+
13+ return promise ;
14+ }
15+
16+ export default getCreateParser ;
Original file line number Diff line number Diff line change @@ -3,13 +3,13 @@ import path from "node:path";
33import url from "node:url" ;
44import createEsmUtils from "esm-utils" ;
55import getPrettier from "./get-prettier.js" ;
6+ import getCreateParser from "./get-create-parser.js" ;
67import getPlugins from "./get-plugins.js" ;
78import compileContract from "./utils/compile-contract.js" ;
89import consistentEndOfLine from "./utils/consistent-end-of-line.js" ;
910import createSnapshot from "./utils/create-snapshot.js" ;
1011import stringifyOptionsForTitle from "./utils/stringify-options-for-title.js" ;
1112import visualizeEndOfLine from "./utils/visualize-end-of-line.js" ;
12- import { createParser } from "../../src/slang-utils/create-parser.js" ;
1313
1414const { __dirname } = createEsmUtils ( import . meta) ;
1515
@@ -327,6 +327,7 @@ async function runTest({
327327 ) {
328328 // Compare with ANTLR's format
329329 const prettier = await getPrettier ( ) ;
330+ const createParser = await getCreateParser ( ) ;
330331 const { formatted : antlrOutput } = await prettier . formatWithCursor ( code , {
331332 ...formatOptions ,
332333 // Since Slang forces us to decide on a compiler version, we need to do the
You can’t perform that action at this time.
0 commit comments