From: Chris Duncan Date: Fri, 25 Jul 2025 14:14:28 +0000 (-0700) Subject: Test basic wallet export and restoration. X-Git-Tag: v0.10.5~50^2~21^2 X-Git-Url: https://git.codecow.com/?a=commitdiff_plain;h=101f798f038f888f2f5864285039274b1932ce8c;p=libnemo.git Test basic wallet export and restoration. --- diff --git a/test/test.import-wallet.mjs b/test/test.import-wallet.mjs index af4ba40..59f5faf 100644 --- a/test/test.import-wallet.mjs +++ b/test/test.import-wallet.mjs @@ -301,5 +301,30 @@ await Promise.all([ await assert.resolves(wallet.destroy()) }) + + await test('export wallet IDs from storage and reimport them', async () => { + const wallet = await Bip44Wallet.fromMnemonic(NANO_TEST_VECTORS.PASSWORD, NANO_TEST_VECTORS.MNEMONIC, NANO_TEST_VECTORS.PASSWORD) + const ids = await Bip44Wallet.export() + + assert.ok(ids.some(id => id === wallet.id)) + + const restored = await Bip44Wallet.restore(wallet.id) + + assert.ok('mnemonic' in restored) + assert.ok('seed' in restored) + assert.throws(() => restored.mnemonic) + assert.throws(() => restored.seed) + + const unlockResult = await restored.unlock(NANO_TEST_VECTORS.PASSWORD) + + assert.equal(unlockResult, true) + assert.ok('mnemonic' in restored) + assert.ok('seed' in restored) + assert.equal(restored.mnemonic, NANO_TEST_VECTORS.MNEMONIC) + assert.equal(restored.seed, NANO_TEST_VECTORS.BIP39_SEED) + + await assert.resolves(wallet.destroy()) + await assert.resolves(restored.destroy()) + }) }) ])