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