summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibJS/Tests/modules/json-modules.js
blob: 84d4f79628074f952cff40a26a54e3143f4810f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
describe("basic behavior", () => {
    test("can import json modules", () => {
        let passed = false;
        let error = null;
        let result = null;

        import("./json-module.json", { assert: { type: "json" } })
            .then(jsonObj => {
                passed = true;
                result = jsonObj;
            })
            .catch(err => {
                error = err;
            });

        runQueuedPromiseJobs();

        if (error) throw error;

        console.log(JSON.stringify(result));
        expect(passed).toBeTrue();

        expect(result).not.toBeNull();
        expect(result).not.toBeUndefined();

        const jsonResult = result.default;
        expect(jsonResult).not.toBeNull();
        expect(jsonResult).not.toBeUndefined();

        expect(jsonResult).toHaveProperty("value", "value");
        expect(jsonResult).toHaveProperty("array", [1, 2, 3]);
        expect(jsonResult).toHaveProperty("map", { innerValue: "innerValue" });
    });
});