From 90a59999f659c3035ecb1eec9f5207aac32fdf26 Mon Sep 17 00:00:00 2001 From: Matt Hess Date: Thu, 25 Sep 2025 16:34:00 -0600 Subject: [PATCH] test: Add MATS tags for hapiTestCrypto Signed-off-by: Matt Hess --- .github/workflows/node-flow-build-application.yaml | 1 + .github/workflows/node-flow-pull-request-checks.yaml | 1 + .../workflows/node-zxc-compile-application-code.yaml | 2 +- .../bdd/suites/crypto/AutoAccountCreationSuite.java | 7 +++++++ ...utoAccountCreationUnlimitedAssociationsSuite.java | 4 ++++ .../bdd/suites/crypto/AutoAccountUpdateSuite.java | 2 ++ .../suites/crypto/CryptoApproveAllowanceSuite.java | 7 +++++++ .../bdd/suites/crypto/CryptoCreateSuite.java | 4 ++++ .../suites/crypto/CryptoDeleteAllowanceSuite.java | 4 ++++ .../bdd/suites/crypto/CryptoDeleteSuite.java | 6 ++++++ .../bdd/suites/crypto/CryptoGetInfoRegression.java | 2 ++ .../suites/crypto/CryptoGetRecordsRegression.java | 3 +++ .../suites/crypto/CryptoRecordsSanityCheckSuite.java | 5 +++++ .../bdd/suites/crypto/CryptoTransferSuite.java | 12 ++++++++++++ .../bdd/suites/crypto/CryptoUpdateSuite.java | 5 +++++ .../crypto/HollowAccountFinalizationSuite.java | 8 ++++++++ .../bdd/suites/crypto/LeakyCryptoTestsSuite.java | 5 +++++ .../services/bdd/suites/crypto/MiscCryptoSuite.java | 2 ++ .../bdd/suites/crypto/QueryPaymentSuite.java | 2 ++ .../suites/crypto/TransferWithCustomFixedFees.java | 5 +++++ .../crypto/TransferWithCustomFractionalFees.java | 4 ++++ .../suites/crypto/TransferWithCustomRoyaltyFees.java | 6 ++++++ .../bdd/suites/crypto/TxnRecordRegression.java | 3 +++ ...utoAccountCreationUnlimitedAssociationsSuite.java | 2 ++ .../allowance/AtomicBatchApproveAllowanceTest.java | 4 ++++ .../services/bdd/suites/hip904/TokenAirdropTest.java | 10 ++++++++++ .../bdd/suites/hip904/TokenCancelAirdropTest.java | 3 +++ .../bdd/suites/hip904/TokenClaimAirdropTest.java | 5 +++++ .../suites/queries/AsNodeOperatorQueriesTest.java | 3 +++ .../bdd/suites/staking/CreateStakersTest.java | 2 ++ 30 files changed, 128 insertions(+), 1 deletion(-) diff --git a/.github/workflows/node-flow-build-application.yaml b/.github/workflows/node-flow-build-application.yaml index a031b724aa03..82b21763380d 100644 --- a/.github/workflows/node-flow-build-application.yaml +++ b/.github/workflows/node-flow-build-application.yaml @@ -177,6 +177,7 @@ jobs: enable-unit-tests: false enable-hapi-tests-crypto: ${{ github.event_name == 'push' || github.event.inputs.enable-hapi-tests == 'true' }} enable-network-log-capture: true + mats-suffix: MATS secrets: access-token: ${{ secrets.GITHUB_TOKEN }} gradle-cache-username: ${{ secrets.GRADLE_CACHE_USERNAME }} diff --git a/.github/workflows/node-flow-pull-request-checks.yaml b/.github/workflows/node-flow-pull-request-checks.yaml index 6d3550dc2de9..01231201d1de 100644 --- a/.github/workflows/node-flow-pull-request-checks.yaml +++ b/.github/workflows/node-flow-pull-request-checks.yaml @@ -123,6 +123,7 @@ jobs: enable-unit-tests: false enable-hapi-tests-crypto: true enable-network-log-capture: true + mats-suffix: MATS secrets: access-token: ${{ secrets.GITHUB_TOKEN }} gradle-cache-username: ${{ secrets.GRADLE_CACHE_USERNAME }} diff --git a/.github/workflows/node-zxc-compile-application-code.yaml b/.github/workflows/node-zxc-compile-application-code.yaml index 83662b8c697e..48e27f2cdabb 100644 --- a/.github/workflows/node-zxc-compile-application-code.yaml +++ b/.github/workflows/node-zxc-compile-application-code.yaml @@ -395,7 +395,7 @@ jobs: env: LC_ALL: en.UTF-8 LANG: en_US.UTF-8 - run: ${GRADLE_EXEC} hapiTestCrypto + run: ${GRADLE_EXEC} hapiTestCrypto${{ inputs.mats-suffix || '' }} - name: Publish HAPI Test (Crypto) Report uses: step-security/publish-unit-test-result-action@5d195d4dec0b9fa7b51a3dbc4298362a021247c7 # v2.20.4 diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationSuite.java index 6cdb1f855ca3..b96caea0a3ca 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationSuite.java @@ -4,6 +4,7 @@ import static com.google.protobuf.ByteString.copyFromUtf8; import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiPropertySource.asAccount; import static com.hedera.services.bdd.spec.HapiPropertySource.asAccountString; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; @@ -156,6 +157,7 @@ public class AutoAccountCreationSuite { private static final String FT_XFER = "ftXfer"; @HapiTest + @Tag(MATS) final Stream aliasedPayerDoesntWork() { return hapiTest( newKeyNamed(ALIAS), @@ -393,6 +395,7 @@ final Stream canAutoCreateWithNftTransfersToAlias() { } @HapiTest + @Tag(MATS) final Stream canAutoCreateWithNftTransferToEvmAddress() { final var civilianBal = 10 * ONE_HBAR; final var nftTransfer = "multiNftTransfer"; @@ -649,6 +652,7 @@ final Stream canAutoCreateWithFungibleTokenTransfersToAlias() { } @HapiTest + @Tag(MATS) final Stream noStakePeriodStartIfNotStakingToNode() { final var user = "user"; final var contract = "contract"; @@ -665,6 +669,7 @@ final Stream noStakePeriodStartIfNotStakingToNode() { } @HapiTest + @Tag(MATS) final Stream hollowAccountCreationWithCryptoTransfer() { final var initialTokenSupply = 1000; final AtomicReference ftId = new AtomicReference<>(); @@ -912,6 +917,7 @@ final Stream accountCreatedIfAliasUsedAsPubKey() { } @HapiTest + @Tag(MATS) final Stream autoAccountCreationWorksWhenUsingAliasOfDeletedAccount() { return hapiTest( newKeyNamed(ALIAS), @@ -1273,6 +1279,7 @@ final Stream transferHbarsToEVMAddressAlias() { } @HapiTest + @Tag(MATS) final Stream transferHbarsToECDSAKey() { final AtomicReference evmAddress = new AtomicReference<>(); diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationUnlimitedAssociationsSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationUnlimitedAssociationsSuite.java index 3ff894b90427..cc5a97db06c2 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationUnlimitedAssociationsSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountCreationUnlimitedAssociationsSuite.java @@ -3,6 +3,7 @@ import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.customizedHapiTest; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; @@ -87,6 +88,7 @@ public class AutoAccountCreationUnlimitedAssociationsSuite { private static final String NFT_CREATE = "nftCreateTxn"; @HapiTest + @Tag(MATS) final Stream autoAccountCreationsUnlimitedAssociationHappyPath() { final var creationTime = new AtomicLong(); final long transferFee = 188608L; @@ -200,6 +202,7 @@ final Stream autoAccountCreationsUnlimitedAssociationsDisabled() { } @HapiTest + @Tag(MATS) final Stream transferHbarsToEVMAddressAliasUnlimitedAssociations() { final AtomicReference partyId = new AtomicReference<>(); final AtomicReference partyAlias = new AtomicReference<>(); @@ -307,6 +310,7 @@ final Stream transferHbarsToEVMAddressAliasUnlimitedAssociations() } @HapiTest + @Tag(MATS) final Stream transferTokensToEVMAddressAliasUnlimitedAssociations() { final AtomicReference partyId = new AtomicReference<>(); final AtomicReference partyAlias = new AtomicReference<>(); diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountUpdateSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountUpdateSuite.java index b0894bc006ed..cc8e6965f55e 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountUpdateSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/AutoAccountUpdateSuite.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; import static com.hedera.services.bdd.spec.keys.SigControl.OFF; @@ -87,6 +88,7 @@ final Stream modifySigRequiredAfterAutoAccountCreation() { } @HapiTest + @Tag(MATS) final Stream updateKeyOnAutoCreatedAccount() { final var complexKey = "complexKey"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoApproveAllowanceSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoApproveAllowanceSuite.java index c4b988944852..f44958ed792b 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoApproveAllowanceSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoApproveAllowanceSuite.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; import static com.hedera.services.bdd.spec.assertions.AssertUtils.inOrder; @@ -132,6 +133,7 @@ public class CryptoApproveAllowanceSuite { public static final String PAUSE_KEY = "pauseKey"; @HapiTest + @Tag(MATS) final Stream transferErc20TokenFromContractWithApproval() { final var transferFromOtherContractWithSignaturesTxn = "transferFromOtherContractWithSignaturesTxn"; final var nestedContract = "NestedERC20Contract"; @@ -316,6 +318,7 @@ final Stream transferringMissingNftViaApprovalFailsWithInvalidNftId } @HapiTest + @Tag(MATS) final Stream canDeleteAllowanceFromDeletedSpender() { return hapiTest( newKeyNamed(SUPPLY_KEY), @@ -774,6 +777,7 @@ final Stream noOwnerDefaultsToPayer() { } @HapiTest + @Tag(MATS) final Stream canHaveMultipleOwners() { return hapiTest( newKeyNamed(SUPPLY_KEY), @@ -1108,6 +1112,7 @@ final Stream emptyAllowancesRejected() { } @HapiTest + @Tag(MATS) final Stream tokenNotAssociatedToAccountFails() { return hapiTest( newKeyNamed(SUPPLY_KEY), @@ -1205,6 +1210,7 @@ final Stream negativeAmountFailsForFungible() { } @HapiTest + @Tag(MATS) public final Stream chargedUsdScalesWithAllowances() { return hapiTest( newKeyNamed(SUPPLY_KEY), @@ -1489,6 +1495,7 @@ final Stream approveForAllDoesNotSetExplicitNFTSpender() { } @HapiTest + @Tag(MATS) final Stream scheduledCryptoApproveAllowanceWorks() { return hapiTest( newKeyNamed(SUPPLY_KEY), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoCreateSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoCreateSuite.java index ab8fd429e456..f57de08c8c93 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoCreateSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoCreateSuite.java @@ -3,6 +3,7 @@ import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; import static com.hedera.services.bdd.spec.assertions.TransactionRecordAsserts.recordWith; @@ -189,6 +190,7 @@ final Stream canonicalEvmAddressesDeterminedByAliases( } @HapiTest + @Tag(MATS) final Stream createAnAccountWithStakingFields() { return hapiTest( cryptoCreate("civilianWORewardStakingNode") @@ -766,6 +768,7 @@ final Stream successfullyRecreateAccountWithSameAliasAfterDeletion( } @HapiTest + @Tag(MATS) final Stream createAnAccountWithNoMaxAutoAssocAndBalance() { double v13PriceUsd = 0.05; @@ -948,6 +951,7 @@ final Stream createAnAccountWith1001MaxAssoc() { } @HapiTest + @Tag(MATS) final Stream createAnAccountWithEVMAddressAliasAndECKey() { return hapiTest(newKeyNamed(SECP_256K1_SOURCE_KEY).shape(SECP_256K1_SHAPE), withOpContext((spec, opLog) -> { final var ecdsaKey = spec.registry().getKey(SECP_256K1_SOURCE_KEY); diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteAllowanceSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteAllowanceSuite.java index edb2b0674302..e2541ea5c4d4 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteAllowanceSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteAllowanceSuite.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getAccountDetails; @@ -96,6 +97,7 @@ final Stream idVariantsTreatedAsExpected() { } @HapiTest + @Tag(MATS) final Stream canDeleteAllowanceForDeletedSpender() { final String owner = "owner"; final String spender = "spender"; @@ -274,6 +276,7 @@ final Stream invalidOwnerFails() { } @HapiTest + @Tag(MATS) final Stream feesAsExpected() { final String owner = "owner"; final String spender = "spender"; @@ -353,6 +356,7 @@ final Stream feesAsExpected() { } @HapiTest + @Tag(MATS) final Stream succeedsWhenTokenPausedFrozenKycRevoked() { final String owner = "owner"; final String spender = "spender"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteSuite.java index 36deb88ebb08..15130ac61fcc 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoDeleteSuite.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiPropertySource.asAccount; import static com.hedera.services.bdd.spec.HapiPropertySource.explicitBytesOf; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; @@ -75,6 +76,7 @@ final Stream accountIdVariantsTreatedAsExpected() { } @LeakyHapiTest(requirement = ContextRequirement.SYSTEM_ACCOUNT_BALANCES) + @Tag(MATS) final Stream deletedAccountCannotBePayer() { final var submittingNodeAccount = "3"; final var beneficiaryAccount = "beneficiaryAccountForDeletedAccount"; @@ -122,6 +124,7 @@ final Stream canQueryForRecordsWithDeletedPayers() { } @HapiTest + @Tag(MATS) final Stream fundsTransferOnDelete() { long B = HapiSpecSetup.getDefaultInstance().defaultBalance(); @@ -136,6 +139,7 @@ final Stream fundsTransferOnDelete() { } @HapiTest + @Tag(MATS) final Stream cannotDeleteAccountsWithNonzeroTokenBalances() { return hapiTest( newKeyNamed("admin"), @@ -191,6 +195,7 @@ final Stream cannotDeleteAccountWithSameBeneficiary() { } @HapiTest + @Tag(MATS) final Stream cannotDeleteTreasuryAccount() { return hapiTest( cryptoCreate(TREASURY), @@ -202,6 +207,7 @@ final Stream cannotDeleteTreasuryAccount() { } @HapiTest + @Tag(MATS) final Stream deleteEcdsaKeyAliasWorked() { return hapiTest( createHip32Auto(1, SECP_256K1_SHAPE, i -> ACCOUNT_TO_BE_DELETED), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetInfoRegression.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetInfoRegression.java index bfb76527bc1d..afba97a17add 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetInfoRegression.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetInfoRegression.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; import static com.hedera.services.bdd.spec.keys.KeyShape.SIMPLE; @@ -49,6 +50,7 @@ public class CryptoGetInfoRegression { /** For Demo purpose : The limit on each account info and account balance queries is set to 5 */ @LeakyHapiTest(overrides = {"tokens.maxRelsPerInfoQuery"}) + @Tag(MATS) final Stream fetchesOnlyALimitedTokenAssociations() { final var account = "test"; final var aKey = "tokenKey"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetRecordsRegression.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetRecordsRegression.java index 5ccff9310f87..4e5614c37f29 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetRecordsRegression.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoGetRecordsRegression.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.TransactionRecordAsserts.recordWith; import static com.hedera.services.bdd.spec.assertions.TransferListAsserts.including; @@ -35,6 +36,7 @@ public class CryptoGetRecordsRegression { private static final String PAYER = "payer"; @HapiTest + @Tag(MATS) final Stream succeedsNormally() { String memo = "Dim galleries, dusky corridors got past..."; @@ -106,6 +108,7 @@ final Stream failsForDeletedAccount() { } @HapiTest + @Tag(MATS) final Stream getAccountRecords_testForDuplicates() { return hapiTest( cryptoCreate(ACCOUNT_1).balance(5000000000000L).sendThreshold(1L), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoRecordsSanityCheckSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoRecordsSanityCheckSuite.java index 81800dd4ba80..0974bd48239b 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoRecordsSanityCheckSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoRecordsSanityCheckSuite.java @@ -3,6 +3,7 @@ import static com.hedera.services.bdd.junit.ContextRequirement.SYSTEM_ACCOUNT_BALANCES; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getAccountBalance; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getTxnRecord; @@ -52,6 +53,7 @@ public class CryptoRecordsSanityCheckSuite { private static final String ORIG_KEY = "origKey"; @LeakyHapiTest(requirement = SYSTEM_ACCOUNT_BALANCES) + @Tag(MATS) final Stream ownershipChangeShowsInRecord() { final var firstOwner = "A"; final var secondOwner = "B"; @@ -92,6 +94,7 @@ final Stream cryptoCreateRecordSanityChecks() { } @LeakyHapiTest(requirement = SYSTEM_ACCOUNT_BALANCES) + @Tag(MATS) final Stream cryptoDeleteRecordSanityChecks() { return hapiTest(flattened( cryptoCreate("test"), @@ -116,6 +119,7 @@ final Stream cryptoTransferRecordSanityChecks() { } @LeakyHapiTest(requirement = SYSTEM_ACCOUNT_BALANCES) + @Tag(MATS) final Stream cryptoUpdateRecordSanityChecks() { return hapiTest(flattened( cryptoCreate("test"), @@ -128,6 +132,7 @@ final Stream cryptoUpdateRecordSanityChecks() { } @LeakyHapiTest(requirement = SYSTEM_ACCOUNT_BALANCES) + @Tag(MATS) final Stream insufficientAccountBalanceRecordSanityChecks() { final long BALANCE = 500_000_000L; return hapiTest(flattened( diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoTransferSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoTransferSuite.java index 796ad96a26ea..80ddfd9ee79d 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoTransferSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoTransferSuite.java @@ -4,6 +4,7 @@ import static com.google.protobuf.ByteString.copyFromUtf8; import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiPropertySource.asAccount; import static com.hedera.services.bdd.spec.HapiPropertySource.asAccountString; import static com.hedera.services.bdd.spec.HapiPropertySource.asTopicString; @@ -315,6 +316,7 @@ final Stream okToRepeatSerialNumbersInBurnList() { } @HapiTest // fees differ expected 46889349 actual 46887567 + @Tag(MATS) final Stream canUseAliasAndAccountCombinations() { final AtomicReference ftId = new AtomicReference<>(); final AtomicReference nftId = new AtomicReference<>(); @@ -394,6 +396,7 @@ final Stream aliasKeysAreValidated() { // https://github.com/hashgraph/hedera-services/issues/2875 @HapiTest + @Tag(MATS) final Stream canUseMirrorAliasesForNonContractXfers() { final AtomicReference ftId = new AtomicReference<>(); final AtomicReference nftId = new AtomicReference<>(); @@ -477,6 +480,7 @@ final Stream canUseMirrorAliasesForNonContractXfers() { @SuppressWarnings("java:S5669") @HapiTest + @Tag(MATS) final Stream canUseEip1014AliasesForXfers() { final var partyCreation2 = "partyCreation2"; final var counterCreation2 = "counterCreation2"; @@ -599,6 +603,7 @@ final Stream canUseEip1014AliasesForXfers() { } @HapiTest + @Tag(MATS) final Stream cannotTransferFromImmutableAccounts() { final var contract = "PayableConstructor"; final var multiKey = "swiss"; @@ -759,6 +764,7 @@ final Stream checksExpectedDecimalsForFungibleTokenTransferList() { } @HapiTest + @Tag(MATS) final Stream nftTransfersCannotRepeatSerialNos() { final var aParty = "aParty"; final var bParty = "bParty"; @@ -1037,6 +1043,7 @@ final Stream okToSetInvalidPaymentHeaderForCostAnswer() { @SuppressWarnings("java:S5960") @HapiTest + @Tag(MATS) final Stream tokenTransferFeesScaleAsExpected() { return hapiTest( cryptoCreate("a"), @@ -1232,6 +1239,7 @@ final Stream twoComplexKeysRequired() { } @HapiTest + @Tag(MATS) final Stream specialAccountsBalanceCheck() { return hapiTest(IntStream.concat(IntStream.range(1, 101), IntStream.range(900, 1001)) .mapToObj(i -> withOpContext((spec, log) -> allRunFor(spec, getAccountBalance(String.valueOf(i)))) @@ -1414,6 +1422,7 @@ final Stream hapiTransferFromForNFTWithCustomFeesWithAllowance() { } @HapiTest + @Tag(MATS) final Stream hapiTransferFromForFungibleTokenWithCustomFeesWithAllowance() { final var FUNGIBLE_TOKEN_WITH_FIXED_HBAR_FEE = "fungibleTokenWithFixedHbarFee"; final var FUNGIBLE_TOKEN_WITH_FIXED_TOKEN_FEE = "fungibleTokenWithFixedTokenFee"; @@ -1657,6 +1666,7 @@ final Stream balancesChangeOnTransfer() { } @HapiTest + @Tag(MATS) final Stream netAdjustmentsMustBeZero() { final AtomicReference partyId = new AtomicReference<>(); final AtomicReference counterId = new AtomicReference<>(); @@ -1692,6 +1702,7 @@ final Stream netAdjustmentsMustBeZero() { } @HapiTest + @Tag(MATS) final Stream customFeesCannotCauseOverflow() { final var secondFeeCollector = "secondFeeCollector"; return hapiTest( @@ -1712,6 +1723,7 @@ final Stream customFeesCannotCauseOverflow() { } @HapiTest + @Tag(MATS) final Stream createHollowAccountWithNftTransferAndCompleteIt() { final var tokenA = "tokenA"; final var hollowAccountKey = "hollowAccountKey"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoUpdateSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoUpdateSuite.java index e7fb52c4d1d4..85a15980a20e 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoUpdateSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/CryptoUpdateSuite.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; @@ -156,6 +157,7 @@ final Stream updateForMaxAutoAssociationsForAccountsWorks() { } @HapiTest + @Tag(MATS) final Stream updateStakingFieldsWorks() { final var stakedAccountId = 20; return hapiTest( @@ -190,6 +192,7 @@ final Stream updateStakingFieldsWorks() { } @LeakyHapiTest(overrides = {"entities.maxLifetime", "ledger.maxAutoAssociations"}) + @Tag(MATS) final Stream usdFeeAsExpectedCryptoUpdate() { double baseFee = 0.000214; double baseFeeWithExpiry = 0.00022; @@ -355,6 +358,7 @@ final Stream updateWithOneEffectiveSig() { } @HapiTest + @Tag(MATS) final Stream updateWithOverlappingSigs() { return hapiTest( newKeyNamed(TARGET_KEY).shape(twoLevelThresh).labels(overlappingKeys), @@ -366,6 +370,7 @@ final Stream updateWithOverlappingSigs() { } @HapiTest + @Tag(MATS) final Stream updateFailsWithContractKey() { final var id = new AtomicReference(); final var CONTRACT = "Multipurpose"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/HollowAccountFinalizationSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/HollowAccountFinalizationSuite.java index e4db9cdfdbf2..eb69c250ee22 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/HollowAccountFinalizationSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/HollowAccountFinalizationSuite.java @@ -3,6 +3,7 @@ import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; import static com.hedera.services.bdd.spec.assertions.TransactionRecordAsserts.recordWith; @@ -98,6 +99,7 @@ public class HollowAccountFinalizationSuite { private static final String VANILLA_TOKEN = "TokenD"; @HapiTest + @Tag(MATS) final Stream hollowAccountCompletionWithEthereumTransaction() { final String CONTRACT = "Fuse"; return hapiTest( @@ -145,6 +147,7 @@ final Stream hollowAccountCompletionWithEthereumTransaction() { } @HapiTest + @Tag(MATS) final Stream hollowAccountCompletionWithTokenTransfer() { final var fungibleToken = "fungibleToken"; final AtomicReference ftId = new AtomicReference<>(); @@ -259,6 +262,7 @@ final Stream hollowAccountCompletionWithHollowPayer() { } @HapiTest + @Tag(MATS) final Stream hollowAccountCompletionWithTokenAssociation() { return hapiTest(flattened( newKeyNamed(SECP_256K1_SOURCE_KEY).shape(SECP_256K1_SHAPE), @@ -287,6 +291,7 @@ final Stream hollowAccountCompletionWithTokenAssociation() { } @HapiTest + @Tag(MATS) final Stream hollowAccountFinalizationWhenAccountNotPresentInPreHandle() { final var ECDSA_2 = "ECDSA_2"; return hapiTest( @@ -501,6 +506,7 @@ final Stream hollowAccountCompletionWithContractCreate() { } @HapiTest + @Tag(MATS) final Stream hollowAccountCompletionWithEthereumContractCreate() { final var CONTRACT = "CreateTrivial"; return hapiTest(flattened( @@ -830,6 +836,7 @@ final Stream txnWith2CompletionsAndAnother2PrecedingChildRecords() } @HapiTest + @Tag(MATS) final Stream hollowPayerAndOtherReqSignerBothGetCompletedInASingleTransaction() { final var ecdsaKey2 = "ecdsaKey2"; final var recipientKey = "recipient"; @@ -898,6 +905,7 @@ final Stream hollowPayerAndOtherReqSignerBothGetCompletedInASingleT } @HapiTest + @Tag(MATS) final Stream hollowAccountCompletionIsPersistedEvenIfTxnFails() { return hapiTest(flattened( newKeyNamed(SECP_256K1_SOURCE_KEY).shape(SECP_256K1_SHAPE), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/LeakyCryptoTestsSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/LeakyCryptoTestsSuite.java index 7bd976fec476..b04f10705ddc 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/LeakyCryptoTestsSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/LeakyCryptoTestsSuite.java @@ -6,6 +6,7 @@ import static com.hedera.services.bdd.junit.ContextRequirement.FEE_SCHEDULE_OVERRIDES; import static com.hedera.services.bdd.junit.RepeatableReason.NEEDS_SYNCHRONOUS_HANDLE_WORKFLOW; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.customizedHapiTest; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; @@ -382,6 +383,7 @@ final Stream cannotExceedAllowancesTransactionLimit() { } @LeakyHapiTest(requirement = FEE_SCHEDULE_OVERRIDES) + @Tag(MATS) final Stream hollowAccountCreationChargesExpectedFees() { final long REDUCED_NODE_FEE = 2L; final long REDUCED_NETWORK_FEE = 3L; @@ -458,6 +460,7 @@ final Stream hollowAccountCreationChargesExpectedFees() { @Order(14) @LeakyHapiTest(overrides = {"contracts.evm.version"}) + @Tag(MATS) final Stream contractDeployAfterEthereumTransferLazyCreate() { final var RECIPIENT_KEY = LAZY_ACCOUNT_RECIPIENT; final var lazyCreateTxn = PAY_TXN; @@ -500,6 +503,7 @@ final Stream contractDeployAfterEthereumTransferLazyCreate() { } @LeakyHapiTest(overrides = {"contracts.evm.version"}) + @Tag(MATS) final Stream contractCallAfterEthereumTransferLazyCreate() { final var RECIPIENT_KEY = LAZY_ACCOUNT_RECIPIENT; final var lazyCreateTxn = PAY_TXN; @@ -547,6 +551,7 @@ final Stream contractCallAfterEthereumTransferLazyCreate() { @HapiTest @Order(17) + @Tag(MATS) final Stream autoAssociationWorksForContracts() { final var theContract = "CreateDonor"; final String tokenA = "tokenA"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/MiscCryptoSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/MiscCryptoSuite.java index 242440a3e352..d27a61ba9400 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/MiscCryptoSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/MiscCryptoSuite.java @@ -3,6 +3,7 @@ import static com.hedera.services.bdd.junit.ContextRequirement.FEE_SCHEDULE_OVERRIDES; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; import static com.hedera.services.bdd.spec.keys.KeyShape.SIMPLE; @@ -69,6 +70,7 @@ final Stream verifyUnsupportedOps() { } @HapiTest + @Tag(MATS) final Stream sysAccountKeyUpdateBySpecialWontNeedNewKeyTxnSign() { String sysAccount = "977"; String randomAccountA = "randomAccountA"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/QueryPaymentSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/QueryPaymentSuite.java index f66a69de71ae..07e44c8ab47b 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/QueryPaymentSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/QueryPaymentSuite.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiPropertySource.asAccount; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getAccountInfo; @@ -66,6 +67,7 @@ final Stream queryPaymentsFailsWithInsufficientFunds() { * 3. Transaction payer is not involved in transfers for query payment to node and all payers have enough balance */ @HapiTest + @Tag(MATS) final Stream queryPaymentsMultiBeneficiarySucceeds() { return hapiTest( cryptoCreate("a").balance(1_234L), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFixedFees.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFixedFees.java index c9da561a5f73..392225887fb8 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFixedFees.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFixedFees.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.customizedHapiTest; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; @@ -431,6 +432,7 @@ final Stream transferApprovedFungibleWithFixedHbarCustomFeeNoAllowa } @HapiTest + @Tag(MATS) final Stream transferApprovedFungibleWithFixedHtsCustomFeeAsOwner() { return hapiTest( cryptoCreate(htsCollector), @@ -666,6 +668,7 @@ final Stream transferApprovedNonFungibleWithFixedHtsCustomFeeAsOwne } @HapiTest + @Tag(MATS) final Stream transferApprovedNonFungibleWithFixedHtsCustomFeeAsSpender() { return hapiTest( newKeyNamed(NFT_KEY), @@ -817,6 +820,7 @@ final Stream transferFungibleWithThreeFixedHtsCustomFeesWithAllColl } @HapiTest + @Tag(MATS) final Stream transferFungibleWithFixedHtsCustomFees2Layers() { return hapiTest( cryptoCreate(htsCollector), @@ -1374,6 +1378,7 @@ final Stream transferFungibleWithFixedHtsCustomFeeNotEnoughForGasAn } @HapiTest + @Tag(MATS) final Stream transferWithFractionalCustomFee() { return hapiTest( cryptoCreate(htsCollector).balance(ONE_HUNDRED_HBARS), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFractionalFees.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFractionalFees.java index c60ed30275e2..27900f4e9c32 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFractionalFees.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomFractionalFees.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.crypto; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; import static com.hedera.services.bdd.spec.keys.TrieSigMapGenerator.uniqueWithFullPrefixesFor; @@ -310,6 +311,7 @@ final Stream transferWithFractionalCustomFeeAllowance() { } @HapiTest + @Tag(MATS) final Stream transferWithFractionalCustomFeeAllowanceNetOfTransfers() { return hapiTest( cryptoCreate(htsCollector).balance(ONE_HUNDRED_HBARS), @@ -409,6 +411,7 @@ final Stream transferWithFractionalCustomFeeNegativeNotEnoughAllowa } @HapiTest + @Tag(MATS) final Stream transferWithFractionalCustomFeesThreeCollectors() { return hapiTest( cryptoCreate(alice), @@ -481,6 +484,7 @@ final Stream transferWithFractionalCustomFeesDenominatorMin() { } @HapiTest + @Tag(MATS) final Stream transferWithFractionalCustomFeesDenominatorMax() { return hapiTest( cryptoCreate(alice), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomRoyaltyFees.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomRoyaltyFees.java index b1dad97add9c..bb4f93e56108 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomRoyaltyFees.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TransferWithCustomRoyaltyFees.java @@ -4,6 +4,7 @@ import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.node.app.service.contract.impl.utils.ConversionUtils.asEvmAddress; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; import static com.hedera.services.bdd.spec.assertions.TransactionRecordAsserts.recordWith; @@ -558,6 +559,7 @@ final Stream transferNonFungibleWithRoyaltyHtsFee2Transactions() { } @HapiTest + @Tag(MATS) final Stream transferNonFungibleWithRoyaltyHtsFee2TokenFees() { return hapiTest( newKeyNamed(NFT_KEY), @@ -909,6 +911,7 @@ final Stream transferNonFungibleWithRoyaltyAllowanceOfTheNFTGiven() } @HapiTest + @Tag(MATS) final Stream transferNonFungibleWithRoyaltyAllCollectorsExempt() { return hapiTest( newKeyNamed(NFT_KEY), @@ -1269,6 +1272,7 @@ final Stream transferNonFungibleWithHollowAccountAndRoyaltyFungible } @HapiTest + @Tag(MATS) final Stream transferNonFungibleWithHollowAccountAndRoyaltyFallbackHbarFee() { return hapiTest(flattened( newKeyNamed(NFT_KEY), @@ -1442,6 +1446,7 @@ final Stream transferRoyaltyFeeDuplicatedEvmAddressFungibleSenderId } @HapiTest + @Tag(MATS) final Stream transferRoyaltyFeeLongZeroAddressFungibleSenderIds() { final var bufferAccount = "account2"; final var fungibleToken = "fungibleToken"; @@ -1593,6 +1598,7 @@ final Stream transferRoyaltyFeeExplicitlyDuplicatedFungibleSenderId * fees. */ @HapiTest + @Tag(MATS) final Stream biDirectionalAirdropsCannotTriggerRoyaltyPayments() { return hapiTest( newKeyNamed(NFT_KEY), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TxnRecordRegression.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TxnRecordRegression.java index aaae9102d66c..b8cdbe0b221a 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TxnRecordRegression.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/TxnRecordRegression.java @@ -3,6 +3,7 @@ import static com.hedera.services.bdd.junit.RepeatableReason.NEEDS_VIRTUAL_TIME_FOR_FAST_EXECUTION; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getReceipt; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getTxnRecord; @@ -42,6 +43,7 @@ @Tag(CRYPTO) public class TxnRecordRegression { @HapiTest + @Tag(MATS) final Stream recordsStillQueryableWithDeletedPayerId() { return hapiTest( cryptoCreate("toBeDeletedPayer"), @@ -114,6 +116,7 @@ final Stream receiptUnknownBeforeConsensus() { } @HapiTest + @Tag(MATS) final Stream receiptAvailableWithinCacheTtl() { return hapiTest( cryptoCreate("misc").via("success").balance(1_000L), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/batch/AtomicAutoAccountCreationUnlimitedAssociationsSuite.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/batch/AtomicAutoAccountCreationUnlimitedAssociationsSuite.java index b8fa7203686b..82dc689aa206 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/batch/AtomicAutoAccountCreationUnlimitedAssociationsSuite.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/crypto/batch/AtomicAutoAccountCreationUnlimitedAssociationsSuite.java @@ -3,6 +3,7 @@ import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.customizedHapiTest; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; @@ -435,6 +436,7 @@ final Stream transferTokensToEVMAddressAliasUnlimitedAssociations() } @HapiTest + @Tag(MATS) final Stream transferNftToEVMAddressAliasUnlimitedAssociations() { final AtomicReference partyId = new AtomicReference<>(); final AtomicReference partyAlias = new AtomicReference<>(); diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip551/allowance/AtomicBatchApproveAllowanceTest.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip551/allowance/AtomicBatchApproveAllowanceTest.java index 8f4e1f0fddd3..ddf9f02aee32 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip551/allowance/AtomicBatchApproveAllowanceTest.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip551/allowance/AtomicBatchApproveAllowanceTest.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.hip551.allowance; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountDetailsAsserts.accountDetailsWith; import static com.hedera.services.bdd.spec.assertions.AssertUtils.inOrder; @@ -147,6 +148,7 @@ public static void beforeAll(@NonNull final TestLifecycle testLifecycle) { * @return hapi test */ @HapiTest + @Tag(MATS) public final Stream transferErc20TokenFromContractWithApproval() { final var transferFromOtherContractWithSignaturesTxn = "transferFromOtherContractWithSignaturesTxn"; final var nestedContract = "NestedERC20Contract"; @@ -264,6 +266,7 @@ public final Stream transferErc20TokenFromContractWithApproval() { * @return hapi test */ @HapiTest + @Tag(MATS) public final Stream cannotPayForAnyTransactionWithContractAccount() { final var cryptoAdminKey = "cryptoAdminKey"; final var contract = "PayableConstructor"; @@ -1479,6 +1482,7 @@ public final Stream duplicateEntriesGetsReplacedWithDifferentTxn() * @return hapi test */ @HapiTest + @Tag(MATS) public final Stream cannotHaveMultipleAllowedSpendersForTheSameNftSerial() { return hapiTest( newKeyNamed(SUPPLY_KEY), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenAirdropTest.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenAirdropTest.java index 8bd2a9f7cd53..7bd1d1ef9e30 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenAirdropTest.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenAirdropTest.java @@ -4,6 +4,7 @@ import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.ContextRequirement.PROPERTY_OVERRIDES; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.defaultHapiSpec; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.TransactionRecordAsserts.includingFungibleMovement; @@ -220,6 +221,7 @@ final Stream tokenMultipleAirdropsToSameAccount() { } @HapiTest + @Tag(MATS) final Stream nftAirdropToExistingAccountsTransfers() { return hapiTest( // receivers with free auto association slots @@ -256,6 +258,7 @@ final Stream nftAirdropToExistingAccountsTransfers() { @DisplayName("without free auto associations slots") class AirdropToExistingAccountsWithoutFreeAutoAssociations { @HapiTest + @Tag(MATS) final Stream tokenAirdropToExistingAccountsPending() { return hapiTest( tokenAirdrop( @@ -448,6 +451,7 @@ final Stream transferMultipleFtAndNftToEOAWithNoFreeAutoAssociation @HapiTest @DisplayName("with multiple tokens") + @Tag(MATS) final Stream tokenAirdropMultipleTokens() { return hapiTest( createTokenWithName("FT1"), @@ -541,6 +545,7 @@ final Stream airdropToAliasWithNoFreeSlots() { @HapiTest @DisplayName("airdrop to contract with admin key") + @Tag(MATS) final Stream airdropToContractWithAdminKey() { final var testContract = "ToyMaker"; final var key = "key"; @@ -1264,6 +1269,7 @@ final Stream airdropToNonExistingED25519Account() { @HapiTest @DisplayName("SECP256K1 key account") + @Tag(MATS) final Stream airdropToNonExistingSECP256K1Account() { var secp256K1 = "secp256K1"; return hapiTest( @@ -1361,6 +1367,7 @@ final Stream airdropInvalidTokenIdFails() { @HapiTest @DisplayName("containing multiple senders") + @Tag(MATS) final Stream airdropWithMultipleSenders() { return hapiTest( cryptoCreate("sender1"), @@ -1483,6 +1490,7 @@ final Stream airdropFtWithAllowance() { @HapiTest @DisplayName("NFT with allowance") + @Tag(MATS) final Stream airdropNftWithAllowance() { var spender = "spender"; return hapiTest( @@ -2282,6 +2290,7 @@ final Stream singleTokenToAssociatedContract() { // 2 EOA airdrops multiple tokens to a contract that is associated to all of them @HapiTest @DisplayName("multiple tokens to associated contract should transfer") + @Tag(MATS) final Stream multipleTokensToAssociatedContract() { var mutableContract = "PayReceivable"; return hapiTest(flattened( @@ -2599,6 +2608,7 @@ final Stream ftAndNftWithFreeAssociationsForMultipleContracts() { @HapiTest @DisplayName("when token is frozen") + @Tag(MATS) final Stream whenTokenIsFrozen() { final String ALICE = "alice"; var mutableContract = "PayReceivable"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenCancelAirdropTest.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenCancelAirdropTest.java index 86697518f8ac..bd0012411f64 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenCancelAirdropTest.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenCancelAirdropTest.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.hip904; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.transactions.TxnVerbs.cryptoCreate; import static com.hedera.services.bdd.spec.transactions.TxnVerbs.cryptoDelete; @@ -270,6 +271,7 @@ final Stream claimCanceledNFTAirdrop() { @HapiTest @DisplayName("with multiple NFTs") + @Tag(MATS) final Stream multipleNFTs() { final var account = "account"; final var receiver = "receiver"; @@ -478,6 +480,7 @@ final Stream FTAndNFTToDifferentReceivers() { @HapiTest @DisplayName("when treasury is changed") + @Tag(MATS) final Stream treasuryIsChanged() { final var account = "account"; final var receiver = "receiver"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenClaimAirdropTest.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenClaimAirdropTest.java index 628f82a211c7..f1aa4cd76d88 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenClaimAirdropTest.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/hip904/TokenClaimAirdropTest.java @@ -3,6 +3,7 @@ import static com.hedera.node.app.hapi.utils.EthSigsUtils.recoverAddressFromPubKey; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.defaultHapiSpec; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.assertions.AccountInfoAsserts.accountWith; @@ -231,6 +232,7 @@ final Stream singleNFTTransfer() { @HapiTest @DisplayName("not enough Hbar to claim and than enough") + @Tag(MATS) final Stream notEnoughHbarToClaimAndThanEnough() { final String ALICE = "ALICE"; final String BOB = "BOB"; @@ -652,6 +654,7 @@ final Stream tokenPausedDuringAirdrop() { @HapiTest @DisplayName("Claim token airdrop - 2nd account pays") + @Tag(MATS) final Stream claimTokenAirdropOtherAccountPays() { return hapiTest(flattened( setUpTokensAndAllReceivers(), @@ -679,6 +682,7 @@ final Stream claimTokenAirdropOtherAccountPays() { @HapiTest @DisplayName("Claim token airdrop - sender account pays") + @Tag(MATS) final Stream claimTokenAirdropSenderAccountPays() { return hapiTest(flattened( setUpTokensAndAllReceivers(), @@ -1264,6 +1268,7 @@ final Stream hollowNoMaxAutoAssociationSuccess() { @HapiTest @DisplayName("Hollow account should be created before implementation of HIP-904") + @Tag(MATS) final Stream hollowAccountBehavior() { final String ALICE = "ALICE"; final String BOB = "BOB"; diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/queries/AsNodeOperatorQueriesTest.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/queries/AsNodeOperatorQueriesTest.java index 757fd51fbbbb..ad8b3b9b4ec1 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/queries/AsNodeOperatorQueriesTest.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/queries/AsNodeOperatorQueriesTest.java @@ -3,6 +3,7 @@ import static com.hedera.services.bdd.junit.ContextRequirement.THROTTLE_OVERRIDES; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getAccountInfo; import static com.hedera.services.bdd.spec.queries.QueryVerbs.getContractBytecode; @@ -88,6 +89,7 @@ static void beforeAll(@NonNull final TestLifecycle lifecycle) { @HapiTest @DisplayName("Only node operators don't need to sign file contents queries") + @Tag(MATS) final Stream fileGetContentsNoSigRequired() { final var filename = "anyFile.txt"; final var someoneElse = "someoneElse"; @@ -220,6 +222,7 @@ final Stream nodeOperatorCryptoGetInfoThrottled() { } @LeakyHapiTest(requirement = THROTTLE_OVERRIDES) + @Tag(MATS) final Stream nodeOperatorCryptoGetInfoNotThrottled() { return hapiTest(flattened( overridingThrottles("testSystemFiles/node-operator-throttles.json"), diff --git a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/staking/CreateStakersTest.java b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/staking/CreateStakersTest.java index 047166b84d4e..6ec61ce8c479 100644 --- a/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/staking/CreateStakersTest.java +++ b/hedera-node/test-clients/src/main/java/com/hedera/services/bdd/suites/staking/CreateStakersTest.java @@ -2,6 +2,7 @@ package com.hedera.services.bdd.suites.staking; import static com.hedera.services.bdd.junit.TestTags.CRYPTO; +import static com.hedera.services.bdd.junit.TestTags.MATS; import static com.hedera.services.bdd.spec.HapiSpec.hapiTest; import static com.hedera.services.bdd.spec.dsl.operations.transactions.TouchBalancesOperation.touchBalanceOf; import static com.hedera.services.bdd.spec.transactions.TxnVerbs.cryptoUpdate; @@ -35,6 +36,7 @@ public class CreateStakersTest { static SpecAccount NODE2_STAKER; @HapiTest + @Tag(MATS) final Stream createStakers() { return hapiTest( ensureStakingActivated(),