From: Chris Duncan Date: Wed, 3 Sep 2025 23:52:22 +0000 (-0700) Subject: Fix type comparison to undefined. X-Git-Tag: v0.10.5~27^2~1 X-Git-Url: https://git.codecow.com/?a=commitdiff_plain;h=ffa9e59bbaad69df6645bcaa62ba199f40df8a3a;p=libnemo.git Fix type comparison to undefined. --- diff --git a/src/lib/wallet/restore.ts b/src/lib/wallet/restore.ts index d2e6d3a..8e76a3c 100644 --- a/src/lib/wallet/restore.ts +++ b/src/lib/wallet/restore.ts @@ -6,7 +6,7 @@ import { _get } from './get' export async function _restore (id?: unknown) { try { - if (typeof id !== undefined && typeof id !== 'string') { + if (id !== undefined && typeof id !== 'string') { throw new TypeError('ID to restore must be a string') } const wallets = [] diff --git a/test/test.import-wallet.mjs b/test/test.import-wallet.mjs index d6d493e..37b389c 100644 --- a/test/test.import-wallet.mjs +++ b/test/test.import-wallet.mjs @@ -282,6 +282,28 @@ await Promise.all([ await assert.resolves(restored.destroy()) }) + await test('restore wallets without referencing IDs', async () => { + const wallet = await Wallet.load('BIP-44', NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.MNEMONIC, NANO_TEST_VECTORS.PASSWORD) + const backups = await Wallet.backup() + + assert.ok(backups.some(record => record.id === wallet.id)) + + const restored = (await Wallet.restore())[0] + + assert.ok('mnemonic' in restored) + assert.ok('seed' in restored) + assert.ok(restored.mnemonic === undefined) + assert.ok(restored.seed === undefined) + + await restored.unlock(NANO_TEST_VECTORS.PASSWORD) + + assert.ok(await restored.verify(NANO_TEST_VECTORS.MNEMONIC)) + assert.ok(await restored.verify(NANO_TEST_VECTORS.BIP39_SEED)) + + await assert.resolves(wallet.destroy()) + await assert.resolves(restored.destroy()) + }) + await test('load account from legacy address', async () => { const wallet = await Wallet.load('BIP-44', NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.MNEMONIC, NANO_TEST_VECTORS.PASSWORD) await wallet.unlock(NANO_TEST_VECTORS.PASSWORD)