use of org.ethereum.db.ReceiptStore in project rskj by rsksmart.
the class Web3ImplTest method getUnknownTransactionReceipt.
@Test
public void getUnknownTransactionReceipt() throws Exception {
ReceiptStore receiptStore = new ReceiptStoreImpl(new HashMapDB());
World world = new World(receiptStore);
Web3Impl web3 = createWeb3(world, receiptStore);
Account acc1 = new AccountBuilder().name("acc1").build();
Account acc2 = new AccountBuilder().name("acc2").build();
Transaction tx = new TransactionBuilder().sender(acc1).receiver(acc2).value(BigInteger.valueOf(1000000)).build();
String hashString = tx.getHash().toHexString();
Assert.assertNull(web3.eth_getTransactionReceipt(hashString));
}
use of org.ethereum.db.ReceiptStore in project rskj by rsksmart.
the class BlockChainImplTest method createBlockChain.
private static BlockChainImpl createBlockChain(Repository repository, IndexedBlockStore blockStore, BlockValidatorImpl blockValidator) {
KeyValueDataSource ds = new HashMapDB();
ds.init();
ReceiptStore receiptStore = new ReceiptStoreImpl(ds);
AdminInfo adminInfo = new SimpleAdminInfo();
EthereumListener listener = new BlockExecutorTest.SimpleEthereumListener();
BlockChainImpl blockChain = new BlockChainImpl(config, repository, blockStore, receiptStore, null, listener, adminInfo, blockValidator);
TransactionPoolImpl transactionPool = new TransactionPoolImpl(config, repository, blockStore, receiptStore, null, listener, 10, 100);
blockChain.setTransactionPool(transactionPool);
return blockChain;
}
use of org.ethereum.db.ReceiptStore in project rskj by rsksmart.
the class Web3ImplLogsTest method getWeb3WithEventInContractCreation.
private Web3Impl getWeb3WithEventInContractCreation() {
ReceiptStore receiptStore = new ReceiptStoreImpl(new HashMapDB());
World world = getWorld3WithBlockWithEventInContractCreation(config, receiptStore);
TransactionPool transactionPool = new TransactionPoolImpl(config, world.getRepository(), world.getBlockChain().getBlockStore(), receiptStore, null, null, 10, 100);
Web3Impl web3 = createWeb3(world.getBlockChain(), transactionPool, receiptStore);
web3.personal_newAccountWithSeed("notDefault");
return web3;
}
use of org.ethereum.db.ReceiptStore in project rskj by rsksmart.
the class Web3ImplTest method getTransactionReceiptNotInMainBlockchain.
@Test
public void getTransactionReceiptNotInMainBlockchain() throws Exception {
ReceiptStore receiptStore = new ReceiptStoreImpl(new HashMapDB());
World world = new World(receiptStore);
Web3Impl web3 = createWeb3(world, receiptStore);
Account acc1 = new AccountBuilder(world).name("acc1").balance(Coin.valueOf(2000000)).build();
Account acc2 = new AccountBuilder().name("acc2").build();
Transaction tx = new TransactionBuilder().sender(acc1).receiver(acc2).value(BigInteger.valueOf(1000000)).build();
List<Transaction> txs = new ArrayList<>();
txs.add(tx);
Block genesis = world.getBlockChain().getBestBlock();
Block block1 = new BlockBuilder(world).parent(genesis).difficulty(3l).transactions(txs).build();
org.junit.Assert.assertEquals(ImportResult.IMPORTED_BEST, world.getBlockChain().tryToConnect(block1));
Block block1b = new BlockBuilder(world).parent(genesis).difficulty(block1.getDifficulty().asBigInteger().longValue() - 1).build();
Block block2b = new BlockBuilder(world).difficulty(2).parent(block1b).build();
org.junit.Assert.assertEquals(ImportResult.IMPORTED_NOT_BEST, world.getBlockChain().tryToConnect(block1b));
org.junit.Assert.assertEquals(ImportResult.IMPORTED_BEST, world.getBlockChain().tryToConnect(block2b));
String hashString = tx.getHash().toHexString();
TransactionReceiptDTO tr = web3.eth_getTransactionReceipt(hashString);
Assert.assertNull(tr);
}
Aggregations