use of com.hedera.mirror.test.e2e.acceptance.props.MirrorTransaction in project hedera-mirror-node by hashgraph.
the class TokenFeature method verifyMirrorRestTransactionIsPresent.
@Then("the mirror node REST API should return status {int} for transaction {string}")
@Retryable(value = { AssertionError.class }, backoff = @Backoff(delayExpression = "#{@restPollingProperties.minBackoff.toMillis()}"), maxAttemptsExpression = "#{@restPollingProperties.maxAttempts}")
public void verifyMirrorRestTransactionIsPresent(int status, String transactionIdString) {
MirrorTransactionsResponse mirrorTransactionsResponse = mirrorClient.getTransactions(transactionIdString);
List<MirrorTransaction> transactions = mirrorTransactionsResponse.getTransactions();
assertNotNull(transactions);
assertThat(transactions).isNotEmpty();
MirrorTransaction mirrorTransaction = transactions.get(0);
assertThat(mirrorTransaction.getTransactionId()).isEqualTo(transactionIdString);
if (status == HttpStatus.OK.value()) {
assertThat(mirrorTransaction.getResult()).isEqualTo("SUCCESS");
}
// publish background message to network to reduce possibility of stale info in low TPS environment
topicClient.publishMessageToDefaultTopic();
}
use of com.hedera.mirror.test.e2e.acceptance.props.MirrorTransaction in project hedera-mirror-node by hashgraph.
the class TokenFeature method verifyTokenTransfers.
private void verifyTokenTransfers(TokenId tokenId) {
String transactionId = networkTransactionResponse.getTransactionIdStringNoCheckSum();
MirrorTransactionsResponse mirrorTransactionsResponse = mirrorClient.getTransactions(transactionId);
List<MirrorTransaction> transactions = mirrorTransactionsResponse.getTransactions();
assertNotNull(transactions);
assertThat(transactions).isNotEmpty();
MirrorTransaction mirrorTransaction = transactions.get(0);
assertThat(mirrorTransaction.getTransactionId()).isEqualTo(transactionId);
assertThat(mirrorTransaction.getValidStartTimestamp()).isEqualTo(networkTransactionResponse.getValidStartString());
assertThat(mirrorTransaction.getName()).isEqualTo("CRYPTOTRANSFER");
boolean tokenIdFound = false;
String tokenIdString = tokenId.toString();
for (MirrorTokenTransfer tokenTransfer : mirrorTransaction.getTokenTransfers()) {
if (tokenTransfer.getTokenId().equalsIgnoreCase(tokenIdString)) {
tokenIdFound = true;
break;
}
}
assertTrue(tokenIdFound);
}
use of com.hedera.mirror.test.e2e.acceptance.props.MirrorTransaction in project hedera-mirror-node by hashgraph.
the class TokenFeature method verifyMirrorTokenWithCustomFeesSchedule.
@Then("the mirror node REST API should confirm token {int} with custom fees schedule")
@Retryable(value = { AssertionError.class }, backoff = @Backoff(delayExpression = "#{@restPollingProperties.minBackoff.toMillis()}"), maxAttemptsExpression = "#{@restPollingProperties.maxAttempts}")
public void verifyMirrorTokenWithCustomFeesSchedule(Integer tokenIndex) {
MirrorTransaction transaction = verifyTransactions(200);
TokenId tokenId = tokenIds.get(getIndexOrDefault(tokenIndex));
verifyTokenWithCustomFeesSchedule(tokenId, transaction.getConsensusTimestamp());
}
Aggregations