Skip to content

Commit 8629fc6

Browse files
committed
test: consider extensions in resolved paths (dividab#133)
1 parent 4d57893 commit 8629fc6

File tree

1 file changed

+19
-21
lines changed

1 file changed

+19
-21
lines changed

test/data/match-path-data.ts

+19-21
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { join, dirname } from "path";
2-
import { removeExtension } from "../../src/filesystem";
32

43
export interface OneTest {
54
readonly name: string;
@@ -60,7 +59,7 @@ export const tests: ReadonlyArray<OneTest> = [
6059
existingFiles: [join("/root", "location", "mylib.myext")],
6160
requestedModule: "lib/mylib",
6261
extensions: [".js", ".myext"],
63-
expectedPath: removeExtension(join("/root", "location", "mylib.myext"))
62+
expectedPath: join("/root", "location", "mylib.myext")
6463
},
6564
{
6665
name: "should resolve request with extension specified",
@@ -78,7 +77,7 @@ export const tests: ReadonlyArray<OneTest> = [
7877
},
7978
existingFiles: [join("/root", "location", "foo.ts")],
8079
requestedModule: "lib/foo",
81-
expectedPath: removeExtension(join("/root", "location", "foo.ts"))
80+
expectedPath: join("/root", "location", "foo.ts")
8281
},
8382
{
8483
name: "should resolve to parent folder when filename is in subfolder",
@@ -95,9 +94,7 @@ export const tests: ReadonlyArray<OneTest> = [
9594
existingFiles: [join("/root", "location", "mylib", "kalle.ts")],
9695
packageJson: { main: "./kalle.ts" },
9796
requestedModule: "lib/mylib",
98-
expectedPath: removeExtension(
99-
join("/root", "location", "mylib", "kalle.ts")
100-
)
97+
expectedPath: join("/root", "location", "mylib", "kalle.ts")
10198
},
10299
{
103100
name: "should resolve from main field in package.json (js)",
@@ -107,9 +104,7 @@ export const tests: ReadonlyArray<OneTest> = [
107104
packageJson: { main: "./kalle.js" },
108105
requestedModule: "lib/mylib.js",
109106
extensions: [".ts", ".js"],
110-
expectedPath: removeExtension(
111-
join("/root", "location", "mylib.js", "kalle.js")
112-
)
107+
expectedPath: join("/root", "location", "mylib.js", "kalle.js")
113108
},
114109
{
115110
name:
@@ -120,9 +115,7 @@ export const tests: ReadonlyArray<OneTest> = [
120115
packageJson: { main: "./kalle.js" },
121116
extensions: [".ts", ".js"],
122117
requestedModule: "lib/mylibjs",
123-
expectedPath: removeExtension(
124-
join("/root", "location", "mylibjs", "kalle.js")
125-
)
118+
expectedPath: join("/root", "location", "mylibjs", "kalle.js")
126119
},
127120
{
128121
name: "should resolve from list of fields by priority in package.json",
@@ -136,9 +129,7 @@ export const tests: ReadonlyArray<OneTest> = [
136129
],
137130
extensions: [".ts", ".js"],
138131
requestedModule: "lib/mylibjs",
139-
expectedPath: removeExtension(
140-
join("/root", "location", "mylibjs", "browser.js")
141-
)
132+
expectedPath: join("/root", "location", "mylibjs", "browser.js")
142133
},
143134
{
144135
name: "should ignore field mappings to missing files in package.json",
@@ -152,9 +143,7 @@ export const tests: ReadonlyArray<OneTest> = [
152143
browser: "./nope.js"
153144
},
154145
extensions: [".ts", ".js"],
155-
expectedPath: removeExtension(
156-
join("/root", "location", "mylibjs", "kalle.js")
157-
)
146+
expectedPath: join("/root", "location", "mylibjs", "kalle.js")
158147
},
159148
{
160149
name: "should ignore advanced field mappings in package.json",
@@ -170,9 +159,7 @@ export const tests: ReadonlyArray<OneTest> = [
170159
browser: { mylibjs: "./browser.js", "./kalle.js": "./browser.js" }
171160
},
172161
extensions: [".ts", ".js"],
173-
expectedPath: removeExtension(
174-
join("/root", "location", "mylibjs", "kalle.js")
175-
)
162+
expectedPath: join("/root", "location", "mylibjs", "kalle.js")
176163
},
177164
{
178165
name: "should resolve to with the help of baseUrl when not explicitly set",
@@ -208,5 +195,16 @@ export const tests: ReadonlyArray<OneTest> = [
208195
existingFiles: [join("/root", "location", "mylib", "index.d.ts")],
209196
requestedModule: "lib/mylib",
210197
expectedPath: undefined
198+
},
199+
{
200+
name: "should resolve main file with cjs file extension",
201+
absoluteBaseUrl: "/root/",
202+
paths: {},
203+
existingFiles: [join("/root", "mylib", "index.cjs")],
204+
packageJson: {
205+
main: "./index.cjs"
206+
},
207+
requestedModule: "mylib",
208+
expectedPath: join("/root", "mylib", "index.cjs")
211209
}
212210
];

0 commit comments

Comments
 (0)