@ledgerhq/coin-hedera
Version:
Ledger Hedera Coin integration
36 lines (26 loc) • 1.21 kB
text/typescript
import { setupMockCryptoAssetsStore } from "@ledgerhq/cryptoassets/cal-client/test-helpers";
import { getMockedCurrency, getMockedHTSTokenCurrency } from "../test/fixtures/currency.fixture";
import { getTokenFromAsset } from "./getTokenFromAsset";
setupMockCryptoAssetsStore();
describe("getTokenFromAsset", () => {
const mockCurrency = getMockedCurrency();
const mockToken = getMockedHTSTokenCurrency();
beforeEach(() => {
jest.clearAllMocks();
});
it("returns token from token asset", async () => {
const asset1 = { type: "hts", assetReference: mockToken.contractAddress };
const findTokenByAddressInCurrencyMock = jest.fn().mockResolvedValue(mockToken);
setupMockCryptoAssetsStore({
findTokenByAddressInCurrency: findTokenByAddressInCurrencyMock,
});
const result = await getTokenFromAsset(mockCurrency, asset1);
expect(result).toEqual(mockToken);
expect(result?.id).toBe(mockToken.id);
expect(result?.contractAddress).toBe(mockToken.contractAddress);
});
it("returns undefined for native asset", async () => {
const nativeAsset = { type: "native" };
expect(await getTokenFromAsset(mockCurrency, nativeAsset)).toBeUndefined();
});
});