UNPKG

@ledgerhq/coin-filecoin

Version:
38 lines (32 loc) 1.2 kB
import { generateMnemonic, accountFromMnemonic, signMessage } from "iso-filecoin/wallet"; import { broadcast } from "./broadcast"; describe("broadcast (integration)", () => { it("rejects a signed transaction from an unfunded account", async () => { const mnemonic = generateMnemonic(); const sender = accountFromMnemonic(mnemonic, "SECP256K1", "m/44'/461'/0'/0/0"); const recipient = accountFromMnemonic(mnemonic, "SECP256K1", "m/44'/461'/0'/0/1"); const message = { version: 0 as const, to: recipient.address.toString(), from: sender.address.toString(), nonce: 0, value: "1", gasLimit: 1000000, gasFeeCap: "1", gasPremium: "1", method: 0, params: "", }; const sigBytes = signMessage(sender.privateKey, "SECP256K1", message); const signedTx = JSON.stringify({ message: { ...message, gaslimit: message.gasLimit, gasfeecap: message.gasFeeCap, gaspremium: message.gasPremium, }, signature: { type: 1, data: Buffer.from(sigBytes.data).toString("base64") }, }); await expect(broadcast(signedTx)).rejects.toThrow(/Something went wrong/); }); });