@Test public void testWalletConstructor() throws IOException, InvalidCipherTextException { DefaultConfig config = new DefaultConfig(); Wallet wallet = new Wallet(config); log.debug(wallet.toString()); assertNotNull(wallet); byte[] data = "sign data".getBytes(); byte[] signature = wallet.sign(data); boolean verifyResult = wallet.verify(data, signature); assertTrue(verifyResult); }
@Test public void testWalletSignAndVerify() throws IOException, InvalidCipherTextException { Wallet wallet = new Wallet(null, "tmp/temp", "temp.key", "Aa1234567890!"); byte[] plain = "test data 1111".getBytes(); log.debug("Plain data: " + new String(plain)); byte[] signature = wallet.sign(plain); log.debug("Signature: " + Hex.toHexString(signature)); boolean verifyResult = wallet.verify(plain, signature); log.debug("Verify Result: " + verifyResult); assertTrue(verifyResult); verifyResult = wallet.verifyHashedData(HashUtil.sha3(plain), signature); log.debug("Verify Result: " + verifyResult); assertTrue(verifyResult); verifyResult = Wallet.verify(HashUtil.sha3(plain), signature, true); log.debug("Verify Result: " + verifyResult); assertTrue(verifyResult); verifyResult = Wallet.verify(plain, signature, false); log.debug("Verify Result: " + verifyResult); assertTrue(verifyResult); verifyResult = Wallet.verify(plain, signature, false, wallet.getPubicKey()); log.debug("Verify Result: " + verifyResult); assertTrue(verifyResult); }
@Test public void constructorTest() { Block block = new TestUtils(wallet).sampleBlock(); List<String> consensusList = new ArrayList<>(); consensusList.add(Hex.toHexString(wallet.sign(block.getHash()))); BlockCon blockCon1 = new BlockCon(block.getHeader().getIndex(), block.getHeader().getPrevBlockHash(), block, consensusList); assertTrue(BlockCon.verify(blockCon1)); BlockCon blockCon2 = new BlockCon(blockCon1.toBinary()); assertTrue(BlockCon.verify(blockCon2)); assertTrue(blockCon1.equals(blockCon2)); } }
@Test public void blockConStoreTest() { LevelDbDataSource ds = new LevelDbDataSource(StoreTestUtils.getTestPath(), "block-con-store-test"); BlockConStore blockConStore = new BlockConStore(ds); Block block = new TestUtils(wallet).sampleBlock(); List<String> consensusList = new ArrayList<>(); consensusList.add(Hex.toHexString(wallet.sign(block.getHash()))); BlockCon blockCon = new BlockCon(block.getHeader().getIndex(), block.getHeader().getPrevBlockHash(), block, consensusList); blockConStore.put(blockCon.getHash(), blockCon); BlockCon foundBlockCon = blockConStore.get(blockCon.getHash()); assert (blockCon.equals(foundBlockCon)); assert (blockConStore.contains(blockCon.getHash())); log.debug("size: " + blockConStore.size()); assertEquals(blockConStore.size(), 1); StoreTestUtils.clearTestDb(); }