Skip to content

Commit d2e4172

Browse files
committed
load-config-import.spec.ts
1 parent db06b6d commit d2e4172

9 files changed

Lines changed: 34 additions & 34 deletions

File tree

src/transpilation/plugins.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { Visitors } from "../transformation/context";
44
import { Chunk } from "./chunk";
55
import { Module } from "./module";
66
import { Transpilation } from "./transpilation";
7-
import { resolveConfigImport } from "./utils";
7+
import { loadConfigImport } from "./utils";
88

99
export interface Plugin {
1010
/**
@@ -45,7 +45,7 @@ export function getPlugins(transpilation: Transpilation, customPlugins: Plugin[]
4545
for (const [index, pluginOption] of (transpilation.options.luaPlugins ?? []).entries()) {
4646
const optionName = `tstl.luaPlugins[${index}]`;
4747

48-
const { error: resolveError, result: factory } = resolveConfigImport(
48+
const { error: resolveError, result: factory } = loadConfigImport(
4949
"plugin",
5050
`${optionName}.name`,
5151
transpilation.projectDir,

src/transpilation/transpile/transformers.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import * as cliDiagnostics from "../../cli/diagnostics";
44
import { CompilerOptions, TransformerImport } from "../../CompilerOptions";
55
import * as diagnosticFactories from "../diagnostics";
66
import { Transpilation } from "../transpilation";
7-
import { resolveConfigImport } from "../utils";
7+
import { loadConfigImport } from "../utils";
88

99
export function getTransformers(
1010
transpilation: Transpilation,
@@ -65,7 +65,7 @@ function loadTransformersFromOptions(transpilation: Transpilation): ts.CustomTra
6565
if (!("transform" in transformerImport)) continue;
6666
const optionName = `compilerOptions.plugins[${index}]`;
6767

68-
const { error: resolveError, result: factory } = resolveConfigImport(
68+
const { error: resolveError, result: factory } = loadConfigImport(
6969
"transformer",
7070
`${optionName}.transform`,
7171
transpilation.projectDir,

src/transpilation/utils.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import * as diagnosticFactories from "./diagnostics";
99
export const isResolveError = (error: unknown): error is Error & { details: string } =>
1010
error instanceof Error && "details" in error;
1111

12-
const resolveImport = createResolve.sync({ extensions: [".js", ".ts", ".tsx"] });
12+
const resolveConfigImport = createResolve.sync({ extensions: [".js", ".ts", ".tsx"] });
1313

14-
export function resolveConfigImport(
14+
export function loadConfigImport(
1515
kind: string,
1616
optionName: string,
1717
basedir: string,
@@ -24,7 +24,7 @@ export function resolveConfigImport(
2424

2525
let resolved: string;
2626
try {
27-
const result = resolveImport({}, basedir, query);
27+
const result = resolveConfigImport({}, basedir, query);
2828
assert(typeof result === "string");
2929
resolved = result;
3030
} catch (error) {
File renamed without changes.
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import * as path from "path";
2+
import { loadConfigImport } from "../../../src/transpilation/utils";
3+
4+
test("resolve relative module paths", () => {
5+
const result = loadConfigImport("test", "test", __dirname, "./ts.ts");
6+
expect(result).toMatchObject({ result: true });
7+
});
8+
9+
test("load .ts modules", () => {
10+
const result = loadConfigImport("test", "test", __dirname, path.join(__dirname, "ts.ts"));
11+
expect(result).toMatchObject({ result: true });
12+
});
13+
14+
test("load CJS .js modules", () => {
15+
const result = loadConfigImport("test", "test", __dirname, path.join(__dirname, "cjs.js"));
16+
expect(result).toMatchObject({ result: true });
17+
});
18+
19+
test("load transpiled ESM .js modules", () => {
20+
const result = loadConfigImport("test", "test", __dirname, path.join(__dirname, "transpiled-esm.js"));
21+
expect(result).toMatchObject({ result: true });
22+
});
23+
24+
test('"import" option', () => {
25+
const result = loadConfigImport("test", "test", __dirname, path.join(__dirname, "import.ts"), "named");
26+
expect(result).toMatchObject({ result: true });
27+
});
File renamed without changes.

test/transpile/resolve-plugin/resolve-plugin.spec.ts

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)