test-ic-wallet-middleware-icrc
Version:
Ic middleware wallet ICRC protocol
68 lines (67 loc) • 3.54 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const common_1 = require("@ic-wallet-middleware/common");
const mockLogger_1 = require("../../__tests_utils/mockLogger");
const allCreditsCacheHandler_1 = require("../../internalHandlers/icrcCacheDataHandlers/services/allCreditsCacheHandler/allCreditsCacheHandler");
const serviceAssetDepositHandler_1 = require("../../internalHandlers/icrcCacheDataHandlers/services/serviceAssetDepositHandler/serviceAssetDepositHandler");
const serviceAssetDetailsHandler_1 = require("../../internalHandlers/icrcCacheDataHandlers/services/serviceAssetDetailsHandler/serviceAssetDetailsHandler");
const loadServiceAssetsHandler_1 = require("../../internalHandlers/service/loadServiceAssetsHandler");
describe("Unit LoadServiceAssetsHandler tests", () => {
const testData = [
{
name: "load service assets",
input: {
servicePrincipal: "pmr6h-yaaaa-aaaao-a3myq-cai",
ledgerAddresses: ["ryjl3-tyaaa-aaaaa-aaaba-cai"],
loadType: common_1.LoadType.Full
},
data: {
cacheData: {
credits: [
{
ledgerAddress: "ryjl3-tyaaa-aaaaa-aaaba-cai",
credit: BigInt(1)
}
],
serviceAssetDeposit: BigInt(0),
assetDetail: {
allowanceFee: BigInt(10000),
withdrawalFee: BigInt(10000),
depositFee: BigInt(10000),
}
},
},
result: common_1.FormResult.success({
servicePrincipal: "pmr6h-yaaaa-aaaao-a3myq-cai",
assets: [{
tokenSymbol: "",
tokenName: "",
decimal: undefined,
shortDecimal: undefined,
logo: "",
balance: BigInt(0),
credit: BigInt(1),
depositFee: BigInt(10000),
withdrawFee: BigInt(10000),
ledgerAddress: "ryjl3-tyaaa-aaaaa-aaaba-cai",
isSync: true,
}]
})
}
];
for (let test of testData) {
it(test.name, async () => {
jest.restoreAllMocks();
const allCreditsHandler = new allCreditsCacheHandler_1.AllCreditsCacheHandler();
allCreditsHandler.process = jest.fn().mockReturnValue(Promise.resolve(test.data.cacheData));
const serviceAssetDetailsHandler = new serviceAssetDetailsHandler_1.ServiceAssetDetailsHandler();
serviceAssetDetailsHandler.process = jest.fn().mockReturnValue(Promise.resolve(test.data.cacheData));
const serviceAssetDepositHandler = new serviceAssetDepositHandler_1.ServiceAssetDepositHandler();
serviceAssetDepositHandler.process = jest.fn().mockReturnValue(Promise.resolve(test.data.cacheData));
const logger = new mockLogger_1.MockLogger();
const loadServiceAssetsHandler = new loadServiceAssetsHandler_1.LoadServiceAssetsHandler(logger, allCreditsHandler, serviceAssetDetailsHandler, serviceAssetDepositHandler);
const result = await loadServiceAssetsHandler.handle(test.input);
expect(result).toEqual(test.result);
}, 10000);
}
});