]> git.codecow.com Git - libnemo.git/commitdiff
Merge branch 'main' into next/user-activation
authorChris Duncan <chris@zoso.dev>
Sun, 26 Apr 2026 21:23:07 +0000 (14:23 -0700)
committerChris Duncan <chris@zoso.dev>
Sun, 26 Apr 2026 21:23:07 +0000 (14:23 -0700)
1  2 
test/test.blocks.mjs

index 4a71806c633fdb2101c1d83967b666bda0d80c10,f392d2f5bd1ff38d0cd39ec0332f8e3499b98b0f..b7c371de538bb02ea23f85f23c2f41a0cd73ae10
@@@ -122,51 -117,27 +122,63 @@@ await Promise.all(
                await test('sign open block with BIP-44 wallet', async () => {\r
                        const wallet = await Wallet.load('BIP-44', PASSWORD, BIP39_SEED)\r
                        await assert.resolves(wallet.unlock(PASSWORD))\r
 -\r
                        const block = new Block(ADDRESS_0, '0', OPEN_BLOCK.previous, OPEN_BLOCK.representative)\r
                                .receive(OPEN_BLOCK.link, OPEN_BLOCK.balance)\r
 -                      await wallet.sign(0, block)\r
 +\r
 +                      await assert.resolves(async () => {\r
 +                              await click(\r
 +                                      'Sign with BIP-44',\r
 +                                      async () => wallet.sign(0, block)\r
 +                              )\r
 +                      })\r
                        assert.ok(await block.verify(PUBLIC_0))\r
  \r
 -                      await wallet.destroy()\r
 +                      await assert.resolves(wallet.destroy())\r
 +              })\r
 +\r
 +              await test('sign open block with Exodus wallet', async () => {\r
 +                      const wallet = await Wallet.load('Exodus', PASSWORD, EXODUS.BIP39_SEED_0)\r
 +                      await assert.resolves(wallet.unlock(PASSWORD))\r
 +                      const block = new Block(EXODUS.ADDRESS_0, '0', OPEN_BLOCK.previous, OPEN_BLOCK.representative)\r
 +                              .receive(OPEN_BLOCK.link, OPEN_BLOCK.balance)\r
 +\r
 +                      await assert.resolves(async () => {\r
 +                              await click(\r
 +                                      'Sign with Exodus',\r
 +                                      async () => wallet.sign(0, block)\r
 +                              )\r
 +                      })\r
 +                      assert.ok(await block.verify(EXODUS.PUBLIC_0))\r
 +\r
 +                      await assert.resolves(wallet.destroy())\r
 +              })\r
 +\r
 +              await test('fail to sign open block with wallet without user activation', async () => {\r
 +                      const wallet = await Wallet.load('BIP-44', PASSWORD, BIP39_SEED)\r
 +                      await assert.resolves(wallet.unlock(PASSWORD))\r
 +                      const block = new Block(ADDRESS_0, '0', OPEN_BLOCK.previous, OPEN_BLOCK.representative)\r
 +                              .receive(OPEN_BLOCK.link, OPEN_BLOCK.balance)\r
 +\r
 +                      console.log('Waiting 6 seconds...')\r
 +                      await new Promise(r => setTimeout(r, 6000))\r
 +                      await assert.rejects(wallet.sign(0, block))\r
 +                      assert.ok(block.signature === undefined)\r
 +\r
 +                      await assert.resolves(wallet.destroy())\r
                })\r
  \r
+               await test('sign open block with Exodus wallet', async () => {\r
+                       const wallet = await Wallet.load('Exodus', PASSWORD, EXODUS.BIP39_SEED_0)\r
+                       await assert.resolves(wallet.unlock(PASSWORD))\r
\r
+                       const block = new Block(EXODUS.ADDRESS_0, '0', OPEN_BLOCK.previous, OPEN_BLOCK.representative)\r
+                               .receive(OPEN_BLOCK.link, OPEN_BLOCK.balance)\r
+                       await wallet.sign(0, block)\r
+                       assert.ok(await block.verify(EXODUS.PUBLIC_0))\r
\r
+                       await wallet.destroy()\r
+               })\r
\r
                await test('fail to sign open block with wallet when locked', async () => {\r
                        const wallet = await Wallet.load('BIP-44', PASSWORD, BIP39_SEED)\r
                        const block = new Block(ADDRESS_0, '0', OPEN_BLOCK.previous, OPEN_BLOCK.representative)\r