Skip to content

Commit 023d4ca

Browse files
committed
add more test cases
1 parent 7708471 commit 023d4ca

File tree

5 files changed

+77
-6
lines changed

5 files changed

+77
-6
lines changed

test/cases/json/import-lazy/index.js

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
2+
it("should be possible to import json data async", function() {
3+
return Promise.all([
4+
import("../data/a.json"),
5+
import("../data/b.json"),
6+
import("../data/c.json"),
7+
import("../data/d.json"),
8+
import("../data/e.json"),
9+
import("../data/f.json"),
10+
import("../data/g.json")
11+
]).then(([a, b, c, d, e, f, g]) => {
12+
expect(a).toEqual({
13+
default: null,
14+
[Symbol.toStringTag]: "Module"
15+
});
16+
expect(b).toEqual({
17+
default: 123,
18+
[Symbol.toStringTag]: "Module"
19+
});
20+
expect(c).toEqual({
21+
0: 1,
22+
1: 2,
23+
2: 3,
24+
3: 4,
25+
default: [1, 2, 3, 4],
26+
[Symbol.toStringTag]: "Module"
27+
});
28+
expect(d).toEqual({
29+
default: {},
30+
[Symbol.toStringTag]: "Module"
31+
});
32+
expect(e).toEqual({
33+
aa: 1,
34+
bb: 2,
35+
1: "x",
36+
default: {
37+
aa: 1,
38+
bb: 2,
39+
"1": "x"
40+
},
41+
[Symbol.toStringTag]: "Module"
42+
});
43+
expect(f).toEqual({
44+
named: "named",
45+
default: {
46+
named: "named",
47+
"default": "default",
48+
__esModule: true
49+
},
50+
[Symbol.toStringTag]: "Module"
51+
});
52+
expect(g).toEqual({
53+
named: {},
54+
default: {
55+
named: {}
56+
},
57+
[Symbol.toStringTag]: "Module"
58+
});
59+
expect(g.named).toBe(g.default.named);
60+
});
61+
});
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"default": "default",
3+
"named": "named"
4+
}

test/cases/mjs/namespace-object-lazy/index.mjs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,11 @@ function contextHarmony(name) {
4040

4141
function contextMixed(name) {
4242
return Promise.all([
43-
import(`./dir-mixed/${name}.js`),
44-
import(/* webpackMode: "lazy-once" */`./dir-mixed?1/${name}.js`),
45-
import(/* webpackMode: "eager" */`./dir-mixed?2/${name}.js`)
43+
import(`./dir-mixed/${name}`),
44+
import(/* webpackMode: "lazy-once" */`./dir-mixed?1/${name}`),
45+
import(/* webpackMode: "eager" */`./dir-mixed?2/${name}`)
4646
]).then(function(results) {
47-
return import(/* webpackMode: "weak" */`./dir-mixed/${name}.js`).then(function(r) {
47+
return import(/* webpackMode: "weak" */`./dir-mixed/${name}`).then(function(r) {
4848
results.push(r);
4949
return results;
5050
});
@@ -80,6 +80,7 @@ it("should receive a namespace object when importing mixed content via context",
8080
promiseTest(contextMixed("one"), { default: { named: "named", default: "default" }, [Symbol.toStringTag]: "Module" }),
8181
promiseTest(contextMixed("two"), { default: { __esModule: true, named: "named", default: "default" }, [Symbol.toStringTag]: "Module" }),
8282
promiseTest(contextMixed("three"), { named: "named", default: "default", [Symbol.toStringTag]: "Module" }),
83-
promiseTest(contextMixed("null"), { default: null, [Symbol.toStringTag]: "Module" })
83+
promiseTest(contextMixed("null"), { default: null, [Symbol.toStringTag]: "Module" }),
84+
promiseTest(contextMixed("json.json"), { named: "named", default: { named: "named", default: "default" }, [Symbol.toStringTag]: "Module" })
8485
]);
8586
});
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"default": "default",
3+
"named": "named"
4+
}

test/cases/mjs/non-mjs-namespace-object-lazy/index.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@ it("should receive a namespace object when importing mixed content via context",
8080
promiseTest(contextMixed("one"), { named: "named", default: { named: "named", default: "default" }, [Symbol.toStringTag]: "Module" }),
8181
promiseTest(contextMixed("two"), { __esModule: true, named: "named", default: "default" }),
8282
promiseTest(contextMixed("three"), { named: "named", default: "default", [Symbol.toStringTag]: "Module" }),
83-
promiseTest(contextMixed("null"), { default: null, [Symbol.toStringTag]: "Module" })
83+
promiseTest(contextMixed("null"), { default: null, [Symbol.toStringTag]: "Module" }),
84+
promiseTest(contextMixed("json.json"), { named: "named", default: { named: "named", default: "default" }, [Symbol.toStringTag]: "Module" })
8485
]);
8586
});

0 commit comments

Comments
 (0)