]> git.codecow.com Git - libnemo.git/commitdiff
Test coverage for invalid block signing input.
authorChris Duncan <chris@zoso.dev>
Wed, 23 Jul 2025 15:30:27 +0000 (08:30 -0700)
committerChris Duncan <chris@zoso.dev>
Wed, 23 Jul 2025 15:30:27 +0000 (08:30 -0700)
test/test.blocks.mjs

index 82b9d45491a774ba04b26ad39fd318429cc49919..0fb34e0201c2916403484c437b72853c85d7cb57 100644 (file)
@@ -163,5 +163,26 @@ await Promise.all([
                        assert.equal(block.signature?.toUpperCase(), '2BD2F905E74B5BEE3E2277CED1D1E3F7535E5286B6E22F7B08A814AA9E5C4E1FEA69B61D60B435ADC2CE756E6EE5F5BE7EC691FE87E024A0B22A3D980CA5B305')\r
                        assert.equal(block.work, '')\r
                })\r
+\r
+               await test('fail to sign open block without key', async () => {\r
+                       const block = new ReceiveBlock(\r
+                               NANO_TEST_VECTORS.OPEN_BLOCK.account,\r
+                               '0',\r
+                               NANO_TEST_VECTORS.OPEN_BLOCK.link,\r
+                               NANO_TEST_VECTORS.OPEN_BLOCK.balance,\r
+                               NANO_TEST_VECTORS.OPEN_BLOCK.representative,\r
+                               NANO_TEST_VECTORS.OPEN_BLOCK.previous,\r
+                               NANO_TEST_VECTORS.OPEN_BLOCK.work\r
+                       )\r
+\r
+                       await assert.rejects(block.sign())\r
+                       assert.nullish(block.signature)\r
+                       await assert.rejects(block.sign(null))\r
+                       assert.nullish(block.signature)\r
+                       await assert.rejects(block.sign('1'))\r
+                       assert.nullish(block.signature)\r
+                       await assert.rejects(block.sign('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'))\r
+                       assert.nullish(block.signature)\r
+               })\r
        })\r
 ])\r