UNPKG

one

Version:

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

47 lines (46 loc) 1.46 kB
import { beforeEach, describe, expect, it, vi } from "vitest"; import { run } from "./prebuild.mjs"; const { loadUserOneOptionsMock, prebuildMock } = vi.hoisted(() => ({ loadUserOneOptionsMock: vi.fn(), prebuildMock: vi.fn() })); vi.mock("../vite/loadConfig", () => ({ loadUserOneOptions: loadUserOneOptionsMock })); vi.mock("vxrn", () => ({ prebuild: prebuildMock })); describe("one prebuild", () => { beforeEach(() => { loadUserOneOptionsMock.mockReset(); prebuildMock.mockReset(); }); it("loads the app bundler configuration before native prebuild", async () => { 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 () => { 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.mjs.map