@tatumio/tezos-wallet-provider
Version:
Tezos provider with local wallet operations
61 lines • 2.71 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tatum_1 = require("@tatumio/tatum");
const extension_1 = require("./extension");
describe('TezosWalletProvider', () => {
let tatumSdk;
beforeEach(async () => {
tatumSdk = await tatum_1.TatumSDK.init({
network: tatum_1.Network.TEZOS_TESTNET,
configureWalletProviders: [extension_1.TezosWalletProvider],
verbose: true,
});
});
const mnemonic = 'today vessel tray napkin drama town apology corn anchor amazing south garbage';
const privateKey = 'edskRvJQqeNih91dkoRkTG1PWxV5AruYbtrkp5DKibL2iMkPGWBbdYp8jpsY3N3skCNrwf9socTv9Sstonkckc4jTb4vMQCSpn';
const address = 'tz1cCRCbBwnazV6howgD84a6fuhikKTnsWHZ';
describe('generateMnemonic', () => {
it('should generate 24 word mnemonic', () => {
const result = tatumSdk.walletProvider.use(extension_1.TezosWalletProvider).generateMnemonic();
expect(result.split(' ')).toHaveLength(24);
});
});
describe('generatePrivateKeyFromMnemonic', () => {
it('should generate private key', async () => {
const result = await tatumSdk.walletProvider
.use(extension_1.TezosWalletProvider)
.generatePrivateKeyFromMnemonic(mnemonic);
expect(result).toBe(privateKey);
});
});
describe('getWallet', () => {
it('should get a wallet', async () => {
const wallet = await tatumSdk.walletProvider.use(extension_1.TezosWalletProvider).getWallet();
expect(wallet.address).toBeTruthy();
expect(wallet.privateKey).toBeTruthy();
expect(wallet.mnemonic).toBeTruthy();
expect(wallet.mnemonic.split(' ')).toHaveLength(24);
});
});
describe('generateAddressFromPrivateKey', () => {
it('should generate an address from private key', async () => {
const result = await tatumSdk.walletProvider
.use(extension_1.TezosWalletProvider)
.generateAddressFromPrivateKey(privateKey);
expect(result).toBe(address);
});
});
describe('signAndBroadcast', () => {
it('should sign and broadcast transaction', async () => {
const tezosTxPayload = {
privateKey: privateKey,
to: address,
amount: 0.1,
};
const txHash = await tatumSdk.walletProvider.use(extension_1.TezosWalletProvider).signAndBroadcast(tezosTxPayload);
expect(txHash).toBeTruthy();
expect(txHash).toHaveLength(51);
});
});
});
//# sourceMappingURL=extension.spec.js.map