UNPKG

@tatumio/tatum-v1

Version:

Tatum API client allows browsers and Node.js clients to interact with Tatum API.

122 lines 9.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Currency_1 = require("../model/request/Currency"); const Fiat_1 = require("../model/response/ledger/Fiat"); const index_1 = require("./index"); // import { updateVirtualCurrency } from './vc'; describe('LEDGER TESTS: Virtual Currency test suite', () => { // declaring global variables which have larger scope let id = ''; it('should create a virtual currency', async () => { /* always returns error currency already registered returning error reached error state { message: 'Virtual currency with given name already exists.', errorCode: 'virtual.duplicate', statusCode: 403 } */ try { const accountObj = await index_1.createVirtualCurrency({ 'name': 'VC_demoVC', 'supply': '1000000', 'basePair': Currency_1.Currency.BTC, 'baseRate': 1, 'customer': { 'accountingCurrency': Fiat_1.Fiat.USD, 'externalId': '12' }, 'description': 'My Virtual Token description.', 'accountCode': 'AC_102131_B' }); id = accountObj.id; // saving id for further functions // console.log(accountObj) //printing the results expect(accountObj.active).toBe(true); expect(accountObj.currency).toBe('VC_JHGFRG'); expect(accountObj.frozen).toBe(false); expect(accountObj.balance.accountBalance).toBe('1000000'); } catch (error) { // checking if currency already exists and proceeding console.log('reached error state', error.response.data); expect(error.response.data.errorCode).toBe('virtual.duplicate'); } }); it('should update virtual currency BaseRate', async () => { const accountObj = await index_1.updateVirtualCurrency({ 'name': 'VC_demoVC', 'basePair': Currency_1.Currency.BTC, 'baseRate': 0.5 }); expect(accountObj).toBeUndefined(); }); it('should return error in case of wrong name', async () => { try { const accountObj = await index_1.updateVirtualCurrency({ 'name': 'VC____demoVC', 'basePair': Currency_1.Currency.BTC, 'baseRate': 0.5 }); console.log(accountObj); } catch (e) { expect(e.response.data.statusCode).toBe(403); expect(e.response.data.errorCode).toBe('vc.not.found'); } }); it('should return error in case of missing validations', async () => { try { const accountObj = await index_1.updateVirtualCurrency({ 'name': 'demoVC', 'basePair': Currency_1.Currency.BTC, 'baseRate': 0.5 }); console.log(accountObj); } catch (e) { // checking negative test results expect(e.response.data.statusCode).toBe(400); expect(e.response.data.errorCode).toBe('validation.failed'); } }); it('should return VC by name', async () => { const accountObj = await index_1.getVirtualCurrencyByName('VC_demoVC'); id = accountObj.accountId; expect(accountObj.name).toBe('VC_demoVC'); expect(accountObj.basePair).toBe('BTC'); }); it('should return error if currency does not exists', async () => { try { await index_1.getVirtualCurrencyByName('VC_emoVC'); } catch (e) { expect(e.response.data.statusCode).toBe(403); expect(e.response.data.errorCode).toBe('vc.not.found'); } }); it('should mint new currency', async () => { try { const accountObj = await index_1.mintVirtualCurrency({ 'accountId': id, 'amount': '1.5' }); expect(accountObj.reference).not.toBe(null); } catch (e) { console.log(JSON.stringify(e.response.data)); } }); // revokeVirtualCurrency it('should destroy new created currency', async () => { try { const accountObj = await index_1.revokeVirtualCurrency({ 'accountId': id, 'amount': '1.5' }); expect(accountObj.reference).not.toBe(null); } catch (e) { console.log(JSON.stringify(e.response.data)); } }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVkZ2VyLnZjLnNwZWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGVkZ2VyL2xlZGdlci52Yy5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0RBQW1EO0FBQ25ELHdEQUFtRDtBQUNuRCxtQ0FBMkk7QUFDM0ksZ0RBQWdEO0FBRWhELFFBQVEsQ0FBQywyQ0FBMkMsRUFBRSxHQUFHLEVBQUU7SUFDdkQscURBQXFEO0lBQ3JELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNaLEVBQUUsQ0FBQyxrQ0FBa0MsRUFBRSxLQUFLLElBQUksRUFBRTtRQUM5Qzs7Ozs7O1VBTUU7UUFDRixJQUFJO1lBQ0EsTUFBTSxVQUFVLEdBQUcsTUFBTSw2QkFBcUIsQ0FBQztnQkFDM0MsTUFBTSxFQUFFLFdBQVc7Z0JBQ25CLFFBQVEsRUFBRSxTQUFTO2dCQUNuQixVQUFVLEVBQUUsbUJBQVEsQ0FBQyxHQUFHO2dCQUN4QixVQUFVLEVBQUUsQ0FBQztnQkFDYixVQUFVLEVBQUU7b0JBQ1Isb0JBQW9CLEVBQUUsV0FBSSxDQUFDLEdBQUc7b0JBQzlCLFlBQVksRUFBRSxJQUFJO2lCQUNyQjtnQkFDRCxhQUFhLEVBQUUsK0JBQStCO2dCQUM5QyxhQUFhLEVBQUUsYUFBYTthQUUvQixDQUFDLENBQUE7WUFDRixFQUFFLEdBQUcsVUFBVSxDQUFDLEVBQUUsQ0FBQSxDQUFDLGtDQUFrQztZQUNyRCxpREFBaUQ7WUFDakQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDcEMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7WUFDN0MsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDckMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENB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