public async Task SentTransaction_ContractAddress_Check_Test()
        {
            //prepare token
            var(transactions, keyPairs) = await _osTestHelper.PrepareTokenForParallel(2, 100);
            await SendTransactionAsync(transactions[0]);

            var fakeContract = Address.FromPublicKey(keyPairs[1].PublicKey);
            var transaction  = await GenerateTransaction(keyPairs[0], fakeContract, "ContractTest", new Empty());

            var transactionId = await SendTransactionAsync(transaction);

            var transactionResult = await QueryTransactionResultAsync(transactionId);

            Enum.TryParse <TransactionResultStatus>(transactionResult.Status, true, out var status);
            status.ShouldBe(TransactionResultStatus.Failed);
        }
Ejemplo n.º 2
0
        public async Task IterationSetup()
        {
            var chain = await _blockchainService.GetChainAsync();

            var tokenAmount = TransactionCount / GroupCount;

            (_prepareTransactions, _keyPairs) = await _osTestHelper.PrepareTokenForParallel(GroupCount, tokenAmount);

            _block = _osTestHelper.GenerateBlock(chain.BestChainHash, chain.BestChainHeight, _prepareTransactions);
            await _blockExecutingService.ExecuteBlockAsync(_block.Header, _prepareTransactions);

            await _osTestHelper.BroadcastTransactions(_prepareTransactions);

            _block = (await _minerService.MineAsync(chain.BestChainHash, chain.BestChainHeight,
                                                    TimestampHelper.GetUtcNow(), TimestampHelper.DurationFromSeconds(4))).Block;

            _systemTransactions = await _osTestHelper.GenerateTransferTransactions(1);

            _cancellableTransactions = await _osTestHelper.GenerateTransactionsWithoutConflictAsync(_keyPairs, tokenAmount);

            chain = await _blockchainService.GetChainAsync();

            _block = _osTestHelper.GenerateBlock(chain.BestChainHash, chain.BestChainHeight,
                                                 _systemTransactions.Concat(_cancellableTransactions));
        }