UNPKG

one

Version:

One is a new React Framework that makes Vite serve both native and web.

53 lines (52 loc) 1.56 kB
import { beforeEach, describe, expect, it, vi } from "vitest"; import { run } from "./prebuild.native.js"; var { loadUserOneOptionsMock, prebuildMock } = vi.hoisted(function () { return { loadUserOneOptionsMock: vi.fn(), prebuildMock: vi.fn() }; }); vi.mock("../vite/loadConfig", function () { return { loadUserOneOptions: loadUserOneOptionsMock }; }); vi.mock("vxrn", function () { return { prebuild: prebuildMock }; }); describe("one prebuild", function () { beforeEach(function () { loadUserOneOptionsMock.mockReset(); prebuildMock.mockReset(); }); it("loads the app bundler configuration before native prebuild", async function () { loadUserOneOptionsMock.mockResolvedValueOnce({}); await run({ platform: "ios", expo: true, "no-install": true }); expect(loadUserOneOptionsMock).toHaveBeenCalledWith("build", true); expect(loadUserOneOptionsMock.mock.invocationCallOrder[0]).toBeLessThan(prebuildMock.mock.invocationCallOrder[0]); expect(prebuildMock).toHaveBeenCalledWith({ root: process.cwd(), platform: "ios", expo: true, "no-install": true }); }); it("does not prebuild when the app configuration fails to load", async function () { loadUserOneOptionsMock.mockRejectedValueOnce(new Error("invalid vite config")); await expect(run({ platform: "ios", expo: true })).rejects.toThrow("invalid vite config"); expect(prebuildMock).not.toHaveBeenCalled(); }); }); //# sourceMappingURL=prebuild.test.native.js.map