]> zoso.dev Git - libnemo.git/commitdiff
Isolate test data to avoid contaminating other tests.
authorChris Duncan <chris@zoso.dev>
Fri, 6 Dec 2024 21:10:56 +0000 (13:10 -0800)
committerChris Duncan <chris@zoso.dev>
Fri, 6 Dec 2024 21:10:56 +0000 (13:10 -0800)
test/manage-rolodex.mjs
test/refresh-accounts.test.mjs
test/tools.test.mjs

index 2ce9c103a6c2c6fcc2ff17fe73e77a6af1885e07..bef463587a0efe7f91fec635387d266c298b2126 100644 (file)
@@ -122,17 +122,20 @@ test('should throw if name is blank', async () => {
 })
 
 console.log('> rolodex data signature verification <')
-const data = 'Test data'
-const signature = await Tools.sign(NANO_TEST_VECTORS.PRIVATE_0, data)
-const rolodex = new Rolodex()
 
 test('should verify valid data and signature', async () => {
+       const data = 'Test data'
+       const signature = await Tools.sign(NANO_TEST_VECTORS.PRIVATE_0, data)
+       const rolodex = new Rolodex()
        await rolodex.add('JohnDoe', NANO_TEST_VECTORS.ADDRESS_0)
        const result = await rolodex.verify('JohnDoe', signature, data)
        assert.equals(result, true)
 })
 
 test('should reject incorrect contact for signature', async () => {
+       const data = 'Test data'
+       const signature = await Tools.sign(NANO_TEST_VECTORS.PRIVATE_0, data)
+       const rolodex = new Rolodex()
        await rolodex.add('JaneSmith', NANO_TEST_VECTORS.ADDRESS_1)
        const result = await rolodex.verify('JaneSmith', signature, data)
        assert.equals(result, false)
index 75d53c4b4429e347be0d5a9ac4a597b6442f47c9..8fcbac52784ca7e037e8cde502433c9ea608b055 100644 (file)
@@ -7,8 +7,6 @@ import { assert, skip, test } from '#GLOBALS.mjs'
 import { NANO_TEST_VECTORS } from '#test/TEST_VECTORS.js'
 import { Account, Bip44Wallet, Rpc } from '#dist/main.js'
 
-const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
-await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
 let rpc
 //@ts-ignore
 var process = process || null
@@ -20,6 +18,8 @@ if (process) {
 console.log('refreshing account info')
 
 test('fetch balance, frontier, and representative', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const accounts = await wallet.accounts()
        const account = accounts[0]
        await account.refresh(rpc)
@@ -46,6 +46,8 @@ test('fetch balance, frontier, and representative', async () => {
 })
 
 test('throw when refreshing unopened account', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const accounts = await wallet.accounts(0x7fffffff)
        const account = accounts[0]
        await assert.rejects(account.refresh(rpc),
@@ -53,11 +55,15 @@ test('throw when refreshing unopened account', async () => {
 })
 
 test('throw when referencing invalid account index', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        await assert.rejects(wallet.accounts(0x80000000),
                { message: 'Invalid child key index 0x80000000' })
 })
 
 test('throw with invalid node', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const invalidNode = new Rpc('http://invalid.com')
        const accounts = await wallet.accounts()
        const account = accounts[0]
@@ -68,6 +74,8 @@ test('throw with invalid node', async () => {
 console.log('finding next unopened account')
 
 test('return correct account from test vector', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const account = await wallet.getNextNewAccount(rpc)
        assert.ok(account)
        assert.equals(account.address, NANO_TEST_VECTORS.ADDRESS_1)
@@ -75,6 +83,8 @@ test('return correct account from test vector', async () => {
 })
 
 test('return successfully for small batch size', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const account = await wallet.getNextNewAccount(rpc, 1)
        assert.ok(account)
        assert.equals(account.address, NANO_TEST_VECTORS.ADDRESS_1)
@@ -82,6 +92,8 @@ test('return successfully for small batch size', async () => {
 })
 
 test('return successfully for large batch size', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const account = await wallet.getNextNewAccount(rpc, 100)
        assert.ok(account)
        assert.equals(account.address, NANO_TEST_VECTORS.ADDRESS_1)
@@ -89,6 +101,8 @@ test('return successfully for large batch size', async () => {
 })
 
 test('should throw on invalid node URL', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        //@ts-expect-error
        await assert.rejects(wallet.getNextNewAccount())
        //@ts-expect-error
@@ -102,6 +116,8 @@ test('should throw on invalid node URL', async () => {
 })
 
 test('should throw on invalid batch size', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        //@ts-expect-error
        await assert.rejects(wallet.getNextNewAccount(rpc, null))
        await assert.rejects(wallet.getNextNewAccount(rpc, -1))
@@ -116,6 +132,8 @@ test('should throw on invalid batch size', async () => {
 console.log('> refreshing wallet accounts <')
 
 skip('should get balance, frontier, and representative for one account', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const accounts = await wallet.refresh(rpc)
        const account = accounts[0]
        assert.ok(account instanceof Account)
@@ -126,11 +144,15 @@ skip('should get balance, frontier, and representative for one account', async (
 })
 
 skip('should get balance, frontier, and representative for multiple accounts', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        const accounts = await wallet.refresh(rpc, 0, 2)
        assert.equals(accounts.length, 1)
        assert.ok(accounts[0] instanceof Account)
 })
 
 skip('should handle failure gracefully', async () => {
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)
        await assert.doesNotReject(wallet.refresh(rpc, 0, 20))
 })
index e28d7bdc6d8514c40cc226f9c8b8a921bfebdbea..1d713a984f815550d994b41fb30b54d1a7f9b94c 100644 (file)
@@ -7,8 +7,6 @@ import { assert, skip, test } from '#GLOBALS.mjs'
 import { RAW_MAX, NANO_TEST_VECTORS } from '#test/TEST_VECTORS.js'\r
 import { Bip44Wallet, Account, SendBlock, Rpc, Tools } from '#dist/main.js'\r
 \r
-const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)\r
-await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)\r
 let rpc\r
 //@ts-ignore\r
 var process = process || null\r
@@ -103,6 +101,8 @@ test('should verify a signature using the public key', async () => {
 })\r
 \r
 test('should verify a block using the public key', async () => {\r
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)\r
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)\r
        const accounts = await wallet.accounts()\r
        const account = accounts[0]\r
        const sendBlock = new SendBlock(\r
@@ -119,6 +119,8 @@ test('should verify a block using the public key', async () => {
 })\r
 \r
 test('should reject a block using the wrong public key', async () => {\r
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)\r
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)\r
        const accounts = await wallet.accounts()\r
        const account = accounts[0]\r
        const sendBlock = new SendBlock(\r
@@ -143,6 +145,8 @@ test('sweeper throws without required parameters', async () => {
 })\r
 \r
 skip('sweeper fails gracefully for ineligible accounts', async () => {\r
+       const wallet = await Bip44Wallet.fromSeed(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.BIP39_SEED)\r
+       await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)\r
        const results = await Tools.sweep(rpc, wallet, NANO_TEST_VECTORS.ADDRESS_1)\r
        assert.ok(results)\r
        assert.equals(results.length, 1)\r