@ledgerhq/coin-tezos
Version:
30 lines (27 loc) • 1.09 kB
text/typescript
import { getBalance } from "./getBalance";
import { setupServer } from "msw/node";
import coinConfig, { TezosCoinConfig } from "../config";
import { HttpResponse, http } from "msw";
describe("getBalance", () => {
const mockServer = setupServer();
coinConfig.setCoinConfig(
() =>
({
status: { type: "active" },
explorer: { url: "http://tezos.explorer.com" },
}) as unknown as TezosCoinConfig,
);
it("gets the balance of a Tezos account", async () => {
mockServer.listen({ onUnhandledRequest: "error" });
mockServer.use(
http.get("http://tezos.explorer.com/v1/accounts/tz1WvvbEGpBXGeTVbLiR6DYBe1izmgiYuZbq", () =>
HttpResponse.json({ type: "empty" }),
),
http.get("http://tezos.explorer.com/v1/accounts/tz1TzrmTBSuiVHV2VfMnGRMYvTEPCP42oSM8", () =>
HttpResponse.json({ type: "user", balance: 25 }),
),
);
expect(await getBalance("tz1WvvbEGpBXGeTVbLiR6DYBe1izmgiYuZbq")).toEqual(BigInt(-1));
expect(await getBalance("tz1TzrmTBSuiVHV2VfMnGRMYvTEPCP42oSM8")).toEqual(BigInt(25));
});
});