use of io.nem.symbol.sdk.model.blockchain.BlockInfo in project nem2-sdk-java by nemtech.
the class BlockRepositoryIntegrationTest method searchByBeneficiaryAddress.
@ParameterizedTest
@EnumSource(RepositoryType.class)
void searchByBeneficiaryAddress(RepositoryType type) {
BlockRepository blockRepository = getBlockRepository(type);
BlockInfo block1 = get(blockRepository.getBlockByHeight(BigInteger.ONE));
BlockSearchCriteria criteria = new BlockSearchCriteria();
Address expectedBeneficiaryAddress = block1.getBeneficiaryAddress();
criteria.setBeneficiaryAddress(expectedBeneficiaryAddress);
BlockPaginationStreamer streamer = new BlockPaginationStreamer(blockRepository);
List<BlockInfo> blocks = get(streamer.search(criteria).toList().toObservable());
blocks.forEach(b -> Assertions.assertEquals(expectedBeneficiaryAddress, b.getBeneficiaryAddress()));
Assertions.assertFalse(blocks.isEmpty());
}
use of io.nem.symbol.sdk.model.blockchain.BlockInfo in project nem2-sdk-java by nemtech.
the class ListenerIntegrationTest method shouldReturnNewBlockViaListener.
@ParameterizedTest
@EnumSource(RepositoryType.class)
void shouldReturnNewBlockViaListener(RepositoryType type) {
Listener listener = getListener(type);
BlockInfo blockInfo = get(listener.newBlock().take(1));
assertTrue(blockInfo.getHeight().intValue() > 0);
}
use of io.nem.symbol.sdk.model.blockchain.BlockInfo in project nem2-sdk-java by nemtech.
the class BlockServiceTest method isValidTransactionInBlockMultipleEquals.
@Test
void isValidTransactionInBlockMultipleEquals() throws ExecutionException, InterruptedException {
BigInteger height = BigInteger.ONE;
String hash = "1234";
String root = "d7de53a6ec87b3cb8e0fb4d6d9aa40b96a17a54b7206702229a6517e91d88dcb";
BlockInfo blockInfo = Mockito.mock(BlockInfo.class);
Mockito.when(blockInfo.getBlockTransactionsHash()).thenReturn(root);
Mockito.when(blockRepositoryMock.getBlockByHeight(height)).thenReturn(Observable.just(blockInfo));
List<MerklePathItem> merklePath = new ArrayList<>();
merklePath.add(new MerklePathItem(Position.LEFT, "11"));
merklePath.add(new MerklePathItem(Position.RIGHT, "22"));
merklePath.add(new MerklePathItem(Position.LEFT, "33"));
merklePath.add(new MerklePathItem(Position.RIGHT, "44"));
MerkleProofInfo merkleProofInfo = new MerkleProofInfo(merklePath);
Mockito.when(blockRepositoryMock.getMerkleTransaction(height, hash)).thenReturn(Observable.just(merkleProofInfo));
Assertions.assertTrue(service.isValidTransactionInBlock(height, hash).toFuture().get());
}
use of io.nem.symbol.sdk.model.blockchain.BlockInfo in project nem2-sdk-java by nemtech.
the class BlockServiceTest method isValidStatementInBlockEmtpyNotEquals.
@Test
void isValidStatementInBlockEmtpyNotEquals() throws ExecutionException, InterruptedException {
BigInteger height = BigInteger.ONE;
String leaf = "ABCD";
String root = "1234";
BlockInfo blockInfo = Mockito.mock(BlockInfo.class);
Mockito.when(blockInfo.getBlockTransactionsHash()).thenReturn(root);
Mockito.when(blockRepositoryMock.getBlockByHeight(height)).thenReturn(Observable.just(blockInfo));
List<MerklePathItem> merklePath = new ArrayList<>();
MerkleProofInfo merkleProofInfo = new MerkleProofInfo(merklePath);
Mockito.when(blockRepositoryMock.getMerkleReceipts(height, leaf)).thenReturn(Observable.just(merkleProofInfo));
Assertions.assertFalse(service.isValidStatementInBlock(height, leaf).toFuture().get());
}
use of io.nem.symbol.sdk.model.blockchain.BlockInfo in project nem2-sdk-java by nemtech.
the class BlockServiceTest method isValidStatementInBlockMultipleEquals.
@Test
void isValidStatementInBlockMultipleEquals() throws ExecutionException, InterruptedException {
BigInteger height = BigInteger.ONE;
String hash = "1234";
String root = "d7de53a6ec87b3cb8e0fb4d6d9aa40b96a17a54b7206702229a6517e91d88dcb";
BlockInfo blockInfo = Mockito.mock(BlockInfo.class);
Mockito.when(blockInfo.getBlockReceiptsHash()).thenReturn(root);
Mockito.when(blockRepositoryMock.getBlockByHeight(height)).thenReturn(Observable.just(blockInfo));
List<MerklePathItem> merklePath = new ArrayList<>();
merklePath.add(new MerklePathItem(Position.LEFT, "11"));
merklePath.add(new MerklePathItem(Position.RIGHT, "22"));
merklePath.add(new MerklePathItem(Position.LEFT, "33"));
merklePath.add(new MerklePathItem(Position.RIGHT, "44"));
MerkleProofInfo merkleProofInfo = new MerkleProofInfo(merklePath);
Mockito.when(blockRepositoryMock.getMerkleReceipts(height, hash)).thenReturn(Observable.just(merkleProofInfo));
Assertions.assertTrue(service.isValidStatementInBlock(height, hash).toFuture().get());
}
Aggregations