Skip to content

chore: upgrade axum and related deps - #1586

Merged
sdbondi merged 1 commit into
tari-project:developmentfrom
sdbondi:upgrade-deps
Sep 25, 2025
Merged

chore: upgrade axum and related deps#1586
sdbondi merged 1 commit into
tari-project:developmentfrom
sdbondi:upgrade-deps

chore: upgrade axum and related deps

d05a773
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
GitHub Actions / Test Results (CI) failed Sep 25, 2025 in 0s

13 fail, 428 pass in 1h 24m 14s

441 tests  +441   428 ✅ +428   1h 24m 14s ⏱️ + 1h 24m 14s
 73 suites + 73     0 💤 ±  0 
  2 files   +  2    13 ❌ + 13 

Results for commit d05a773. ± Comparison against earlier commit e644d67.

Annotations

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Claim validator fees: tests/features/claim_fees.feature:8:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 9s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Application error: 500: Application error: 'Store error: General database failure for operation accounts_insert: UNIQUE constraint failed: accounts.address" }
  Scenario: Claim validator fees
   ✔  Given a base node BASE
   ✔  Given a wallet WALLET connected to base node BASE
   ✔  Given a miner MINER connected to base node BASE and wallet WALLET
   ✔  Given an indexer IDX connected to base node BASE
   ✔  Given a wallet daemon WALLET_D connected to indexer IDX
   ✔  When I create a key named K1 for WALLET_D
   ✔  Given a seed validator node VN connected to base node BASE and wallet daemon WALLET_D using claim fee key K1
   ✔  When miner MINER mines 4 new blocks
   ✔  When wallet WALLET has at least 5000 T
   ✔  When validator node VN sends a registration transaction to base wallet WALLET
   ✔  When miner MINER mines 16 new blocks
   ✔  Then VN has scanned to at least height 17
   ✔  And indexer IDX has scanned to at least height 17
   ✔  Then the validator node VN is listed as registered
   ✔  When indexer IDX connects to all other validators
   ✔  When I create an account ACC1 via the wallet daemon WALLET_D with 10000 free coins
   ✘  When I create an account ACC2 via the wallet daemon WALLET_D with 10000 free coins using key K1
      Step failed:
      Defined: tests/features/claim_fees.feature:35:5
      Matched: integration_tests/tests/steps/wallet_daemon.rs:159:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Application error: 500: Application error: 'Store error: General database failure for operation accounts_insert: UNIQUE constraint failed: accounts.address" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Claim validator fees",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC1",
          ],
          wallet_keys: [
              "K1",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Prevent double claim of validator fees: tests/features/claim_fees.feature:53:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 9s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Application error: 500: Application error: 'Store error: General database failure for operation accounts_insert: UNIQUE constraint failed: accounts.address" }
  Scenario: Prevent double claim of validator fees
   ✔  Given a base node BASE
   ✔  Given a wallet WALLET connected to base node BASE
   ✔  Given a miner MINER connected to base node BASE and wallet WALLET
   ✔  Given an indexer IDX connected to base node BASE
   ✔  Given a wallet daemon WALLET_D connected to indexer IDX
   ✔  When I create a key named K1 for WALLET_D
   ✔  Given a seed validator node VN connected to base node BASE and wallet daemon WALLET_D using claim fee key K1
   ✔  When miner MINER mines 4 new blocks
   ✔  When wallet WALLET has at least 10000 T
   ✔  When validator node VN sends a registration transaction to base wallet WALLET
   ✔  When miner MINER mines 16 new blocks
   ✔  Then VN has scanned to at least height 17
   ✔  And indexer IDX has scanned to at least height 17
   ✔  Then the validator node VN is listed as registered
   ✔  When indexer IDX connects to all other validators
   ✔  When I create an account ACC1 via the wallet daemon WALLET_D with 10000 free coins
   ✘  When I create an account ACC2 via the wallet daemon WALLET_D with 10000 free coins using key K1
      Step failed:
      Defined: tests/features/claim_fees.feature:80:5
      Matched: integration_tests/tests/steps/wallet_daemon.rs:159:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Application error: 500: Application error: 'Store error: General database failure for operation accounts_insert: UNIQUE constraint failed: accounts.address" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Prevent double claim of validator fees",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC1",
          ],
          wallet_keys: [
              "K1",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Mint fungible tokens: tests/features/fungible.feature:8:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 12s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_71346ff65d7b4e54fb231ad677e47e99fc4e0455a617e04ea638fe4d7f89431b does not exist" }
  Scenario: Mint fungible tokens
   ✔  Given a network with registered validator VN and wallet daemon WALLET_D
   ✔  When I create an account ACC via the wallet daemon WALLET_D with 2000000 free coins
   ✔  When wallet daemon WALLET_D publishes the template "faucet" using account ACC
   ✔  When I create an account ACC1 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I create an account ACC2 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I call function "mint" on template "faucet" using account ACC1 to pay fees via wallet daemon WALLET_D with args "amount_10000" named "FAUCET"
   ✘  When I submit a transaction manifest via wallet daemon WALLET_D with inputs "FAUCET, ACC1" named "TX1"
      
      let faucet = global!["FAUCET/components/TestFaucet"];
      let mut acc1 = global!["ACC1/components/Account"];
      
      // get tokens from the faucet
      let faucet_bucket = faucet.take_free_coins();
      acc1.deposit(faucet_bucket);
      Step failed:
      Defined: tests/features/fungible.feature:24:5
      Matched: integration_tests/tests/cucumber.rs:574:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_71346ff65d7b4e54fb231ad677e47e99fc4e0455a617e04ea638fe4d7f89431b does not exist" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [
              "faucet",
          ],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Mint fungible tokens",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC",
              "ACC1",
              "ACC2",
          ],
          wallet_keys: [
              "VN_claim_fee",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Wallet daemon is able to connect to indexer: tests/features/indexer.feature:8:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 6s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Transaction invalid: Unknown [status: InvalidTransaction]" }
  Scenario: Wallet daemon is able to connect to indexer
   ✔  Given a base node BASE
   ✔  Given a wallet WALLET connected to base node BASE
   ✔  Given a miner MINER connected to base node BASE and wallet WALLET
   ✔  Given an indexer IDX connected to base node BASE
   ✔  Given a wallet daemon WALLET_D connected to indexer IDX
   ✔  Given a validator node VN connected to base node BASE and wallet daemon WALLET_D
   ✔  When miner MINER mines 10 new blocks
   ✔  When wallet WALLET has at least 2000 T
   ✔  When validator node VN sends a registration transaction to base wallet WALLET
   ✔  When miner MINER mines 26 new blocks
   ✔  Then the validator node VN is listed as registered
   ✘  When I create an account ACC via the wallet daemon WALLET_D with 2000000 free coins
      Step failed:
      Defined: tests/features/indexer.feature:31:5
      Matched: integration_tests/tests/steps/wallet_daemon.rs:140:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Transaction invalid: Unknown [status: InvalidTransaction]" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Wallet daemon is able to connect to indexer",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [],
          wallet_keys: [
              "VN_claim_fee",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Indexer GraphQL requests work: tests/features/indexer.feature:87:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 2s]
Raw output
Step panicked. Captured output: Failed to save event via graphql client: Request failed: {"query":"{ saveEvent(substateId: \"component_0000000000000000000000000000000000000000000000000000000000000000\", templateAddress: \"0000000000000000000000000000000000000000000000000000000000000000\", txHash: \"0000000000000000000000000000000000000000000000000000000000000000\", topic: \"my_event\", payload: \"{\\\"my\\\":\\\"event\\\"}\", version: 0, timestamp: 1758792967496) { substateId templateAddress txHash topic payload } }","variables":null}  GraphQL error Unknown field "saveEvent" on type "EventQuery".
  Scenario: Indexer GraphQL requests work
   ✔  Given a base node BASE
   ✔  Given an indexer IDX connected to base node BASE
   ✘  Given IDX indexer GraphQL request works
      Step failed:
      Defined: tests/features/indexer.feature:95:5
      Matched: integration_tests/tests/steps/indexer.rs:94:1
      Step panicked. Captured output: Failed to save event via graphql client: Request failed:
      {"query":"{ saveEvent(substateId: \"component_0000000000000000000000000000000000000000000000000000000000000000\", templateAddress: \"0000000000000000000000000000000000000000000000000000000000000000\", txHash: \"0000000000000000000000000000000000000000000000000000000000000000\", topic: \"my_event\", payload: \"{\\\"my\\\":\\\"event\\\"}\", version: 0, timestamp: 1758792967496) { substateId templateAddress txHash topic payload } }","variables":null}
      
      GraphQL error Unknown field "saveEvent" on type "EventQuery".
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Indexer GraphQL requests work",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [],
          wallet_keys: [],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Indexer GraphQL requests events over network substate indexing: tests/features/indexer.feature:97:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 2s]
Raw output
Step panicked. Captured output: No wallet daemon named WALLET_D found
  Scenario: Indexer GraphQL requests events over network substate indexing
   ✔  Given a base node BASE
   ✔  Given a wallet WALLET connected to base node BASE
   ✔  Given a miner MINER connected to base node BASE and wallet WALLET
   ✘  Given a validator node VN connected to base node BASE and wallet daemon WALLET_D
      Step failed:
      Defined: tests/features/indexer.feature:106:5
      Matched: integration_tests/tests/steps/validator_node.rs:42:1
      Step panicked. Captured output: No wallet daemon named WALLET_D found
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Indexer GraphQL requests events over network substate indexing",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [],
          wallet_keys: [],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Indexer GraphQL filtering and pagination of events: tests/features/indexer.feature:129:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 2s]
Raw output
Step panicked. Captured output: No wallet daemon named WALLET_D found
  Scenario: Indexer GraphQL filtering and pagination of events
   ✔  Given a base node BASE
   ✔  Given a wallet WALLET connected to base node BASE
   ✔  Given a miner MINER connected to base node BASE and wallet WALLET
   ✘  Given a validator node VN connected to base node BASE and wallet daemon WALLET_D
      Step failed:
      Defined: tests/features/indexer.feature:138:5
      Matched: integration_tests/tests/steps/validator_node.rs:42:1
      Step panicked. Captured output: No wallet daemon named WALLET_D found
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Indexer GraphQL filtering and pagination of events",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [],
          wallet_keys: [],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Mint, mutate and burn non fungible tokens: tests/features/nft.feature:8:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 30s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_b053e6698a36dcfa675b16b153d851209796212aa5e344f0fb883c00760cb47f does not exist" }
  Scenario: Mint, mutate and burn non fungible tokens
   ✔  Given a network with registered validator VN and wallet daemon WALLET_D
   ✔  When I create an account ACC via the wallet daemon WALLET_D with 2000000 free coins
   ✔  When wallet daemon WALLET_D publishes the template "basic_nft" using account ACC
   ✔  When I create an account ACC1 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I create an account ACC2 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I mint a new non fungible token NFT_X on ACC1 using wallet daemon WALLET_D
   ✔  When I call function "new" on template "basic_nft" using account ACC1 to pay fees via wallet daemon WALLET_D named "NFT"
   ✘  When I submit a transaction manifest via wallet daemon WALLET_D with inputs "NFT, ACC1, ACC2" named "TX1"
      
      let sparkle_nft = global!["NFT/components/SparkleNft"];
      let sparkle_res = global!["NFT/resources/0"];
      let mut acc1 = global!["ACC1/components/Account"];
      let mut acc2 = global!["ACC2/components/Account"];
      
      // mint a new nft with random id
      let nft_bucket = sparkle_nft.mint("NFT1", "http://example.com");
      acc1.deposit(nft_bucket);
      
      // mint a new nft with specific id
      let nft_bucket = sparkle_nft.mint_specific(NonFungibleId("SpecialNft"), "NFT2", "http://example.com");
      acc1.deposit(nft_bucket);
      
      // transfer nft between accounts
      let acc_bucket = acc1.withdraw_non_fungible(sparkle_res, NonFungibleId("SpecialNft"));
      acc2.deposit(acc_bucket);
      
      // mutate a nft
      sparkle_nft.inc_brightness(NonFungibleId("SpecialNft"), 10u32);
      
      // burn a nft
      let nft_bucket = sparkle_nft.mint_specific(NonFungibleId("Burn!"), "NFT3", "http://example.com");
      acc1.deposit(nft_bucket);
      let acc_bucket = acc1.withdraw_non_fungible(sparkle_res, NonFungibleId("Burn!"));
      sparkle_nft.burn(acc_bucket);
      Step failed:
      Defined: tests/features/nft.feature:31:5
      Matched: integration_tests/tests/cucumber.rs:574:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_b053e6698a36dcfa675b16b153d851209796212aa5e344f0fb883c00760cb47f does not exist" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [
              "basic_nft",
          ],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Mint, mutate and burn non fungible tokens",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC",
              "ACC1",
              "ACC2",
          ],
          wallet_keys: [
              "VN_claim_fee",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Create resource and mint in one transaction: tests/features/nft.feature:61:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 15s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_bcc8e3a602c82e01377238d287af9cddad3a293ac6cab26b89d4f33e3d4a6dc7 does not exist" }
  Scenario: Create resource and mint in one transaction
   ✔  Given a network with registered validator VN and wallet daemon WALLET_D
   ✔  When I create an account ACC via the wallet daemon WALLET_D with 2000000 free coins
   ✔  When wallet daemon WALLET_D publishes the template "basic_nft" using account ACC
   ✔  When I create an account ACC1 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I call function "new_with_initial_nft" on template "basic_nft" using account ACC1 to pay fees via wallet daemon WALLET_D with args "nft_str_1000" named "NFT"
   ✘  When I submit a transaction manifest via wallet daemon WALLET_D with inputs "NFT, ACC1" named "TX1"
      
      let sparkle_nft = global!["NFT/components/SparkleNft"];
      let mut acc1 = global!["ACC1/components/Account"];
      
      // get the initailly NFT from the component's vault
      let nft_bucket = sparkle_nft.take_initial_nft();
      acc1.deposit(nft_bucket);
      Step failed:
      Defined: tests/features/nft.feature:77:5
      Matched: integration_tests/tests/cucumber.rs:574:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_bcc8e3a602c82e01377238d287af9cddad3a293ac6cab26b89d4f33e3d4a6dc7 does not exist" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [
              "basic_nft",
          ],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Create resource and mint in one transaction",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC",
              "ACC1",
          ],
          wallet_keys: [
              "VN_claim_fee",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Transfer tokens to account that does not previously exist: tests/features/transfer.feature:8:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 2m 3s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_33a11564b4f9f206b1663eea118c93091af07aa1f77c68cee4619fe210df0393 does not exist" }
  Scenario: Transfer tokens to account that does not previously exist
   ✔  Given a network with registered validator VN and wallet daemon WALLET_D
   ✔  When I create an account ACC via the wallet daemon WALLET_D with 2000000 free coins
   ✔  When wallet daemon WALLET_D publishes the template "faucet" using account ACC
   ✔  When I create an account ACCOUNT via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I call function "mint" on template "faucet" using account ACCOUNT to pay fees via wallet daemon WALLET_D with args "amount_10000" named "FAUCET"
   ✔  When I burn 10T on wallet NETWORK_CONSOLE_WALLET to proof BURN_PROOF for wallet daemon WALLET_D
   ✔  When miner NETWORK_MINER mines 13 new blocks
   ✔  Then VN has scanned to at least height 40
   ✔  Then indexer NETWORK_INDEXER has scanned to at least height 40
   ✔  When I wait for proof BURN_PROOF to confirm on wallet NETWORK_CONSOLE_WALLET
   ✔  When I claim burn BURN_PROOF and spend it into account ACCOUNT using wallet daemon WALLET_D
   ✔  When I print the cucumber world
   ✘  When I submit a transaction manifest via wallet daemon WALLET_D with inputs "FAUCET, ACCOUNT" named "TX1"
      
      let faucet = global!["FAUCET/components/TestFaucet"];
      let mut acc1 = global!["ACCOUNT/components/Account"];
      
      // get tokens from the faucet
      let faucet_bucket = faucet.take_free_coins();
      acc1.deposit(faucet_bucket);
      Step failed:
      Defined: tests/features/transfer.feature:34:5
      Matched: integration_tests/tests/cucumber.rs:574:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_33a11564b4f9f206b1663eea118c93091af07aa1f77c68cee4619fe210df0393 does not exist" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [
              "faucet",
          ],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Transfer tokens to account that does not previously exist",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC",
              "ACCOUNT",
          ],
          wallet_keys: [
              "VN_claim_fee",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Transfer tokens to existing account: tests/features/transfer.feature:64:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 17s]
Raw output
Step panicked. Captured output: Indexer IDX not found
  Scenario: Transfer tokens to existing account
   ✔  Given a network with registered validator VN and wallet daemon WALLET_D
   ✔  When I create an account ACC via the wallet daemon WALLET_D with 2000000 free coins
   ✔  When wallet daemon WALLET_D publishes the template "faucet" using account ACC
   ✔  When I create an account ACCOUNT_1 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I create an account ACCOUNT_2 via the wallet daemon WALLET_D
   ✔  When I call function "mint" on template "faucet" using account ACCOUNT_1 to pay fees via wallet daemon WALLET_D with args "amount_10000" named "FAUCET"
   ✔  When I burn 10T on wallet NETWORK_CONSOLE_WALLET to proof BURN_PROOF for wallet daemon WALLET_D
   ✔  When miner NETWORK_MINER mines 13 new blocks
   ✔  Then VN has scanned to at least height 40
   ✘  Then indexer IDX has scanned to at least height 40
      Step failed:
      Defined: tests/features/transfer.feature:82:5
      Matched: integration_tests/tests/steps/indexer.rs:49:1
      Step panicked. Captured output: Indexer IDX not found
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [
              "faucet",
          ],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Transfer tokens to existing account",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC",
              "ACCOUNT_1",
              "ACCOUNT_2",
          ],
          wallet_keys: [
              "VN_claim_fee",
          ],
          wallet_daemons: [],
      }

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Confidential transfer to account that does not previously exist: tests/features/transfer.feature:115:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 9s]
Raw output
Step doesn't match any function
  Scenario: Confidential transfer to account that does not previously exist
   ✔  Given a network with registered validator VN and wallet daemon WALLET_D
   ✔  Then VN has scanned to at least height 27
   ✔  Then indexer NETWORK_INDEXER has scanned to at least height 27
   ✔  When I create an account ACC_1 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I check the balance of ACC_1 on wallet daemon WALLET_D the amount is at least 9000
   ✘  When I create a new key pair KEY_ACC_2
      Step failed:
      Defined: tests/features/transfer.feature:126:5
      Step doesn't match any function

Check warning on line 0 in /

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

Scenario: Create account and transfer faucets via wallet daemon: tests/features/wallet_daemon.feature:8:3 failed

artifacts/cucumber-test-results/cucumber-output-junit.xml [took 1m 15s]
Raw output
Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_655c4cedaebf85d36e56288ec4381f19d490fa47602cb23b98c538ce214e7e59 does not exist" }
  Scenario: Create account and transfer faucets via wallet daemon
   ✔  Given a network with registered validator VN and wallet daemon WALLET_D
   ✔  When I create an account ACC via the wallet daemon WALLET_D with 2000000 free coins
   ✔  When wallet daemon WALLET_D publishes the template "faucet" using account ACC
   ✔  When I create an account ACC_1 via the wallet daemon WALLET_D with 10000 free coins
   ✔  When I create an account ACC_2 via the wallet daemon WALLET_D with 100000 free coins
   ✔  When I check the balance of ACC_2 on wallet daemon WALLET_D the amount is at least 10000
   ✔  When I call function "mint" on template "faucet" using account ACC_1 to pay fees via wallet daemon WALLET_D with args "10000" named "FAUCET"
   ✔  When I print the cucumber world
   ✘  When I submit a transaction manifest via wallet daemon WALLET_D with inputs "FAUCET, ACC_1" named "TX1"
      
      let faucet = global!["FAUCET/components/TestFaucet"];
      let mut acc1 = global!["ACC_1/components/Account"];
      
      // get tokens from the faucet
      let faucet_bucket = faucet.take_free_coins();
      acc1.deposit(faucet_bucket);
      Step failed:
      Defined: tests/features/wallet_daemon.feature:25:5
      Matched: integration_tests/tests/cucumber.rs:574:1
      Step panicked. Captured output: called `Result::unwrap()` on an `Err` value: RequestFailedWithStatus { code: 500, message: "Substate component_655c4cedaebf85d36e56288ec4381f19d490fa47602cb23b98c538ce214e7e59 does not exist" }
      TariWorld {
          base_nodes: [],
          wallets: [],
          validator_nodes: [],
          indexers: [],
          vn_seeds: [],
          miners: [],
          templates: [
              "faucet",
          ],
          outputs: [],
          http_server: None,
          template_mock_server_port: None,
          current_scenario_name: Some(
              "Create account and transfer faucets via wallet daemon",
          ),
          claim_proofs: [],
          addresses: [],
          num_databases_saved: 0,
          account_keys: [
              "ACC",
              "ACC_1",
              "ACC_2",
          ],
          wallet_keys: [
              "VN_claim_fee",
          ],
          wallet_daemons: [],
      }

Check notice on line 0 in .github

See this annotation in the file changed.

@github-actions github-actions / Test Results (CI)

441 tests found

There are 441 tests, see "Raw output" for the full list of tests.
Raw output
Scenario: Claim and transfer confidential assets via wallet daemon: tests/features/wallet_daemon.feature:55:3
Scenario: Claim base layer burn funds with wallet daemon: tests/features/claim_burn.feature:9:3
Scenario: Claim validator fees: tests/features/claim_fees.feature:8:3
Scenario: Concurrent calls to the Counter template: tests/features/concurrency.feature:7:3
Scenario: Confidential transfer to account that does not previously exist: tests/features/transfer.feature:115:3
Scenario: Counter template registration and invocation multiple times: tests/features/counter.feature:28:3
Scenario: Counter template registration and invocation once: tests/features/counter.feature:8:3
Scenario: Create account and transfer faucets via wallet daemon: tests/features/wallet_daemon.feature:8:3
Scenario: Create and mint account NFT: tests/features/wallet_daemon.feature:77:3
Scenario: Create resource and mint in one transaction: tests/features/nft.feature:61:3
Scenario: Double Claim base layer burn funds with wallet daemon. should fail: tests/features/claim_burn.feature:28:3
Scenario: EndEpoch command is used on epoch change: tests/features/epoch_change.feature:8:3
Scenario: Indexer GraphQL filtering and pagination of events: tests/features/indexer.feature:129:3
Scenario: Indexer GraphQL requests events over network substate indexing: tests/features/indexer.feature:97:3
Scenario: Indexer GraphQL requests work: tests/features/indexer.feature:87:3
Scenario: Mint fungible tokens: tests/features/fungible.feature:8:3
Scenario: Mint, mutate and burn non fungible tokens: tests/features/nft.feature:8:3
Scenario: Offline validator gets evicted: tests/features/eviction.feature:8:3
Scenario: Prevent double claim of validator fees: tests/features/claim_fees.feature:53:3
Scenario: Transactions with DOWN local substates are rejected: tests/features/substates.feature:8:3
Scenario: Transfer tokens to account that does not previously exist: tests/features/transfer.feature:8:3
Scenario: Transfer tokens to existing account: tests/features/transfer.feature:64:3
Scenario: Wallet daemon is able to connect to indexer: tests/features/indexer.feature:8:3
consensus_tests ‑ consensus::epoch_change
consensus_tests ‑ consensus::foreign_block_distribution
consensus_tests ‑ consensus::foreign_shard_group_decides_to_abort
consensus_tests ‑ consensus::multi_shard_propose_blocks_with_new_transactions_until_all_committed
consensus_tests ‑ consensus::multi_shard_single_transaction
consensus_tests ‑ consensus::multi_validator_propose_blocks_with_new_transactions_until_all_committed
consensus_tests ‑ consensus::multishard_inputs_from_previous_outputs
consensus_tests ‑ consensus::multishard_local_inputs_and_outputs_foreign_outputs
consensus_tests ‑ consensus::multishard_local_inputs_foreign_outputs
consensus_tests ‑ consensus::multishard_local_inputs_foreign_outputs_abort
consensus_tests ‑ consensus::multishard_output_conflict_abort
consensus_tests ‑ consensus::multishard_publish_template
consensus_tests ‑ consensus::multishard_unversioned_input_conflict
consensus_tests ‑ consensus::multishard_unversioned_input_conflict_delay_prepare
consensus_tests ‑ consensus::multishard_validator_fee_claim
consensus_tests ‑ consensus::node_requests_missing_transaction_from_local_leader
consensus_tests ‑ consensus::propose_blocks_with_new_transactions_until_all_committed
consensus_tests ‑ consensus::propose_blocks_with_queued_up_transactions_until_all_committed
consensus_tests ‑ consensus::single_shard_input_conflict
consensus_tests ‑ consensus::single_shard_inputs_from_previous_outputs
consensus_tests ‑ consensus::single_shard_unversioned_inputs
consensus_tests ‑ consensus::single_transaction
consensus_tests ‑ consensus::single_transaction_abort
consensus_tests ‑ consensus::single_transaction_multi_vn
consensus_tests ‑ dummy_blocks::dummy_blocks
consensus_tests ‑ dummy_blocks::last_matches_generated_using_real_data
consensus_tests ‑ eviction_proof::it_produces_a_summarized_header_that_hashes_to_the_original
consensus_tests ‑ leader_failure::multi_shard_node_goes_down
consensus_tests ‑ leader_failure::single_shard_neighbour_nodes_go_down
consensus_tests ‑ leader_failure::single_shard_node_goes_down
consensus_tests ‑ leader_failure::single_shard_node_goes_down_and_gets_evicted
consensus_tests ‑ state_tree::check_state_transitions
consensus_tests ‑ substate_store::it_allows_down_then_up
consensus_tests ‑ substate_store::it_allows_requesting_the_same_lock_within_one_transaction
consensus_tests ‑ substate_store::it_allows_substate_up_for_v0
consensus_tests ‑ substate_store::it_disallows_more_than_one_write_lock_non_local_only
consensus_tests ‑ substate_store::it_fails_if_previous_version_is_not_down
consensus_tests ‑ support::helpers::tests::random_substate_address_range::it_generates_a_random_address_in_shard_group
consensus_tests ‑ support::table::test::renders_rows_with_titles
consensus_tests ‑ support::table::test::renders_titles
libp2p-messaging ‑ behaviour::tests::cycle_once_works
state_store_tests ‑ block_diffs::block_diffs_rocksdb
state_store_tests ‑ blocks::basic_block_operations::basic_block_operations_rocksdb
state_store_tests ‑ blocks::block_parent_operations::block_parent_operations_rocksdb
state_store_tests ‑ blocks::block_query_operations::block_query_operations_rocksdb
state_store_tests ‑ foreign_parked_proposals::rocksdb
state_store_tests ‑ foreign_proposals::foreign_proposals_rocksdb
state_store_tests ‑ foreign_substate_pledges::foreign_substate_pledges_rocksdb
state_store_tests ‑ misc::miscellaneous_rocksdb
state_store_tests ‑ missing_transactions::missing_transactions_rocksdb
state_store_tests ‑ quorum_certificates::quorum_certificates_rocksdb
state_store_tests ‑ state_transitions::rocksdb
state_store_tests ‑ state_tree::state_tree_rocksdb
state_store_tests ‑ state_tree_diff::pending_state_tree_diff_rocksdb
state_store_tests ‑ substate_locks::rocksdb
state_store_tests ‑ substates::rocksdb
state_store_tests ‑ transactions::confirm_all_transitions::it_sets_pending_stage_to_stage_rocksdb
state_store_tests ‑ transactions::transaction_execution_operations::transaction_execution_operations_rocksdb
state_store_tests ‑ transactions::transaction_operations::transaction_operations_rocksdb
tari_bor ‑ json_encoding::tests::decode_encode
tari_bor ‑ tag::tests::decoding
tari_bor ‑ tag::tests::encoding
tari_consensus ‑ hotstuff::block_change_set::tests::check_max_mem_usage
tari_consensus ‑ hotstuff::commit_proofs::tests::it_hashes_the_header_identically_to_sidechain_header
tari_engine ‑ runtime::workspace::tests::tuples
tari_engine ‑ wasm::version::tests::it_accepts_compatible_versions
tari_engine ‑ wasm::version::tests::it_rejects_incompatible_versions
tari_engine::access_rules ‑ component_access_rules::it_allows_owner_to_update_component_access_rules
tari_engine::access_rules ‑ component_access_rules::it_prevents_access_rule_modification_if_owner_is_none
tari_engine::access_rules ‑ component_access_rules::it_restricts_component_methods
tari_engine::access_rules ‑ resource_access_rules::it_allows_access_for_proofs_by_amount
tari_engine::access_rules ‑ resource_access_rules::it_allows_resource_access_with_badge_then_recall
tari_engine::access_rules ‑ resource_access_rules::it_allows_resource_actions_if_auth_hook_passes
tari_engine::access_rules ‑ resource_access_rules::it_creates_a_proof_from_bucket
tari_engine::access_rules ‑ resource_access_rules::it_denies_actions_on_resource
tari_engine::access_rules ‑ resource_access_rules::it_denies_recall_for_owner
tari_engine::access_rules ‑ resource_access_rules::it_denies_resource_actions_if_auth_hook_fails
tari_engine::access_rules ‑ resource_access_rules::it_disallows_hook_that_attempts_mutable_call_to_another_component_in_the_transaction
tari_engine::access_rules ‑ resource_access_rules::it_disallows_hook_that_attempts_mutable_call_to_caller
tari_engine::access_rules ‑ resource_access_rules::it_disallows_hook_that_writes_to_caller_component
tari_engine::access_rules ‑ resource_access_rules::it_fails_if_auth_hook_is_invalid
tari_engine::access_rules ‑ resource_access_rules::it_locks_resources_used_in_proofs
tari_engine::access_rules ‑ resource_access_rules::it_permits_cross_template_calls_using_proofs
tari_engine::access_rules ‑ resource_access_rules::it_restricts_resource_actions_to_component
tari_engine::account ‑ attempt_to_overwrite_account
tari_engine::account ‑ basic_faucet_transfer
tari_engine::account ‑ custom_access_rules
tari_engine::account ‑ gasless
tari_engine::account ‑ withdraw_from_account_prevented
tari_engine::address_allocation ‑ it_allocates_addresses_in_template_code
tari_engine::address_allocation ‑ it_allocates_an_address_using_instructions
tari_engine::address_allocation ‑ it_allows_calls_to_component_using_the_allocated_address
tari_engine::address_allocation ‑ it_fails_if_address_allocation_is_not_used
tari_engine::address_allocation ‑ it_fails_if_instruction_allocated_addresses_are_not_used
tari_engine::airdrop ‑ airdrop
tari_engine::asserts ‑ it_fails_with_invalid_amount
tari_engine::asserts ‑ it_fails_with_invalid_bucket
tari_engine::asserts ‑ it_fails_with_invalid_resource
tari_engine::asserts ‑ it_fails_with_invalid_workspace_key
tari_engine::asserts ‑ successful_assert
tari_engine::burn ‑ it_burns_all_resource_types
tari_engine::composability ‑ it_allows_function_to_function_calls
tari_engine::composability ‑ it_allows_function_to_method_calls
tari_engine::composability ‑ it_allows_method_to_function_calls
tari_engine::composability ‑ it_allows_method_to_method_calls
tari_engine::composability ‑ it_allows_multiple_recursion_levels
tari_engine::composability ‑ it_does_not_propagate_permissions
tari_engine::composability ‑ it_fails_on_invalid_calls
tari_engine::composability ‑ it_fails_when_surpassing_recursion_limit
tari_engine::confidential ‑ attempt_to_reveal_with_unbalanced_proof
tari_engine::confidential ‑ mint_and_transfer_revealed
tari_engine::confidential ‑ mint_initial_commitment
tari_engine::confidential ‑ mint_more_later
tari_engine::confidential ‑ mint_revealed_with_invalid_proof
tari_engine::confidential ‑ mint_with_view_key
tari_engine::confidential ‑ multi_commitment_join
tari_engine::confidential ‑ reveal_confidential_and_transfer
tari_engine::confidential ‑ transfer_confidential_amounts_between_accounts
tari_engine::confidential ‑ transfer_confidential_fails_with_invalid_balance
tari_engine::events ‑ basic_emit_event
tari_engine::events ‑ builtin_vault_events
tari_engine::events ‑ cannot_use_standard_topic
tari_engine::fees ‑ another_account_pays_partially_for_fees
tari_engine::fees ‑ dangling_bucket_pay_fees
tari_engine::fees ‑ deducts_fees_from_payments_and_refunds_the_rest
tari_engine::fees ‑ deducts_fees_when_transaction_fails
tari_engine::fees ‑ deposit_from_faucet_then_pay
tari_engine::fees ‑ fail_partial_paid_fees
tari_engine::fees ‑ fail_pay_less_fees_than_fee_transaction
tari_engine::fees ‑ fail_pay_too_little_no_fee_instruction
tari_engine::fees ‑ failed_fee_transaction
tari_engine::fees ‑ success_pay_fee_in_main_instructions
tari_engine::freeze ‑ it_freezes_vaults_containing_a_freezable_resource
tari_engine::fungible ‑ it_does_not_overflow_when_minting_a_huge_initial_supply
tari_engine::fungible ‑ it_does_not_overflow_when_minting_more_then_amount_max_confidential_tokens
tari_engine::fungible ‑ it_does_not_overflow_when_minting_more_then_amount_max_fungible_tokens
tari_engine::no_std ‑ it_compiles_when_using_no_std
tari_engine::publish_template ‑ publish_template_invalid_binary
tari_engine::publish_template ‑ publish_template_success
tari_engine::publish_template ‑ publish_template_too_big_binary
tari_engine::recall ‑ it_recalls_all_resource_types
tari_engine::reentrancy ‑ it_allows_multiple_immutable_access_to_component
tari_engine::reentrancy ‑ it_prevents_multiple_mutable_access_to_component
tari_engine::reentrancy ‑ it_prevents_read_access_to_mutating_component
tari_engine::reentrancy ‑ it_prevents_reentrant_withdraw
tari_engine::resource ‑ confidential_join
tari_engine::resource ‑ fungible_join
tari_engine::resource ‑ non_fungible_join
tari_engine::shenanigans ‑ it_disallows_calls_on_vaults_that_are_not_owned_by_current_component
tari_engine::shenanigans ‑ it_disallows_minting_different_resource_type
tari_engine::shenanigans ‑ it_disallows_vault_access_if_vault_is_not_owned
tari_engine::shenanigans ‑ it_disallows_withdraws_from_vaults_outside_of_component_context
tari_engine::shenanigans ‑ it_disallows_withdraws_from_vaults_outside_of_owning_component
tari_engine::shenanigans ‑ it_does_not_bring_non_owned_vault_id_into_scope
tari_engine::shenanigans ‑ it_prevents_access_to_out_of_scope_component
tari_engine::shenanigans ‑ it_prevents_access_to_vault_id_in_component_context
tari_engine::shenanigans ‑ it_rejects_dangling_resources
tari_engine::shenanigans ‑ it_rejects_dangling_vault_that_has_been_returned
tari_engine::shenanigans ‑ it_rejects_dangling_vaults_in_component
tari_engine::shenanigans ‑ it_rejects_dangling_vaults_in_constructor
tari_engine::shenanigans ‑ it_rejects_double_ownership_of_vault
tari_engine::shenanigans ‑ it_rejects_references_to_buckets_that_arent_in_scope
tari_engine::shenanigans ‑ it_rejects_unknown_substate_addresses
tari_engine::signature ‑ bad_signature
tari_engine::signature ‑ check_signature_api
tari_engine::signature ‑ claim_with_valid_signature
tari_engine::signature ‑ multi_claim
tari_engine::stealth ‑ basic_transfer
tari_engine::stealth ‑ burn_then_attempt_spend
tari_engine::stealth ‑ freeze_then_attempt_spend
tari_engine::stealth ‑ many_outputs_in_one_transfer
tari_engine::stealth ‑ mint_initial_supply
tari_engine::stealth ‑ mint_more_later
tari_engine::stealth ‑ mint_with_view_key
tari_engine::stealth ‑ programmatic_transfer
tari_engine::stealth ‑ transfer_invalid_balance_in_statement
tari_engine::stealth ‑ transfer_invalid_ownership_proof
tari_engine::stealth ‑ transfer_invalid_range_proof_in_statement
tari_engine::stealth ‑ transfer_revealed_between_accounts
tari_engine::stealth ‑ transfer_with_revealed_outputs
tari_engine::tariswap ‑ tariswap
tari_engine::test ‑ basic_nft::burn_nft
tari_engine::test ‑ basic_nft::change_nft_mutable_data
tari_engine::test ‑ basic_nft::create_resource_mint_and_deposit
tari_engine::test ‑ basic_nft::get_non_fungibles_from_containers
tari_engine::test ‑ basic_nft::mint_specific_id
tari_engine::test ‑ consensus::current_epoch
tari_engine::test ‑ emoji_id::mint_emoji_ids
tari_engine::test ‑ errors::invalid_args
tari_engine::test ‑ errors::panic
tari_engine::test ‑ fungible::fungible_mint_and_burn
tari_engine::test ‑ state_create_multiple_in_one_call
tari_engine::test ‑ test_buggy_template
tari_engine::test ‑ test_builtin_templates
tari_engine::test ‑ test_caller_context
tari_engine::test ‑ test_composed
tari_engine::test ‑ test_engine_errors
tari_engine::test ‑ test_errors_on_infinite_loop
tari_engine::test ‑ test_get_template_address
tari_engine::test ‑ test_hello_world
tari_engine::test ‑ test_private_function
tari_engine::test ‑ test_random
tari_engine::test ‑ test_state
tari_engine::test ‑ test_tuples
tari_engine::test ‑ tickets::buy_and_redeem_ticket
tari_engine_types ‑ crypto::elgamal::tests::brute_force_balance::it_brute_forces_a_batch
tari_engine_types ‑ crypto::elgamal::tests::brute_force_balance::it_finds_the_value
tari_engine_types ‑ crypto::elgamal::tests::brute_force_balance::it_returns_none_if_the_value_out_of_range
tari_engine_types ‑ crypto::elgamal::tests::brute_force_balance::it_returns_the_value_equal_to_max_value
tari_engine_types ‑ crypto::helpers::tests::endianness
tari_engine_types ‑ crypto::helpers::tests::homomorphic
tari_engine_types ‑ crypto::helpers::tests::negative
tari_engine_types ‑ id_provider::tests::get_random_bytes
tari_engine_types ‑ id_provider::tests::it_fails_if_generating_more_ids_than_the_max
tari_engine_types ‑ indexed_value::tests::it_diffs_two_indexed_values
tari_engine_types ‑ indexed_value::tests::it_extracts_known_types_from_binary_data
tari_engine_types ‑ indexed_value::tests::it_returns_empty_indexed_value_for_empty_bytes
tari_engine_types ‑ serde_with::cbor_value::tests::decode_encode_cbor
tari_engine_types ‑ serde_with::cbor_value::tests::decode_encode_json
tari_engine_types ‑ serde_with::hex::tests::test_serialize
tari_engine_types ‑ stealth::value_proof::tests::it_fails_if_the_value_differs
tari_engine_types ‑ stealth::value_proof::tests::it_proves_knowledge_of_the_value
tari_engine_types ‑ substate::tests::substate_id_parse::it_parses_a_display_string
tari_engine_types ‑ substate::tests::substate_id_parse::it_parses_valid_substate_ids
tari_engine_types ‑ substate_serde::tests::encoding_and_decoding
tari_epoch_oracles ‑ configured::epoch_ticker::tests::it_ticks_according_to_interval
tari_epoch_oracles ‑ hybrid::watch_ticker::tests::it_picks_up_ticks
tari_ootle_address ‑ ootle_address::tests::it_decodes_from_bech32
tari_ootle_address ‑ ootle_address::tests::it_encodes_and_decodes_from_bytes
tari_ootle_address ‑ ootle_address::tests::it_encodes_to_bech32
tari_ootle_address ‑ ootle_address::tests::it_parses_from_str
tari_ootle_address ‑ ootle_address::tests::serde_tests::it_serializes_to_bytes
tari_ootle_address ‑ ootle_address::tests::serde_tests::it_serializes_to_json
tari_ootle_app_utilities ‑ seed_peer::tests::it_parses_ipv6
tari_ootle_app_utilities ‑ seed_peer::tests::it_parses_with_public_key
tari_ootle_app_utilities ‑ seed_peer::tests::it_parses_without_public_key
tari_ootle_common_types ‑ committee::tests::select_n_starting_from::it_does_not_panic_empty_committee
tari_ootle_common_types ‑ committee::tests::select_n_starting_from::it_selects_members_wrapping_around
tari_ootle_common_types ‑ committee::tests::select_n_starting_from::it_wraps_around_once
tari_ootle_common_types ‑ committee::tests::select_n_starting_from::it_wraps_the_start_index_around
tari_ootle_common_types ‑ engine_signature::tests::it_verifies_a_valid_signature
tari_ootle_common_types ‑ fee_pool::tests::it_creates_a_pool_address_that_naturally_falls_in_the_shard
tari_ootle_common_types ‑ lock_intent::tests::it_allows_read_lock_if_write_lock
tari_ootle_common_types ‑ network::test::network_bytes
tari_ootle_common_types ‑ network::test::network_from_byte
tari_ootle_common_types ‑ network::test::network_from_str
tari_ootle_common_types ‑ num_preshards::tests::it_calculates_all_shard_groups
tari_ootle_common_types ‑ num_preshards::tests::total_shard_group_lengths_equal_num_preshards
tari_ootle_common_types ‑ peer_address::tests::check_conversions
tari_ootle_common_types ‑ peer_address::tests::zero
tari_ootle_common_types ‑ shard::test::committee_is_properly_computed
tari_ootle_common_types ‑ shard_group::tests::all_shards
tari_ootle_common_types ‑ shard_group::tests::contains_or_global_works_correctly
tari_ootle_common_types ‑ shard_group::tests::encode_decode
tari_ootle_common_types ‑ shard_group::tests::intersection::it_calculates_the_intersection_of_overlapping_shard_groups
tari_ootle_common_types ‑ shard_group::tests::intersection::it_returns_none_if_shard_groups_do_not_overlap
tari_ootle_common_types ‑ shard_group::tests::to_string_and_parsing
tari_ootle_common_types ‑ shard_group::tests::to_substate_address_range
tari_ootle_common_types ‑ shard_state_versions::tests::it_applies_a_bitmap_to_increment_versions
tari_ootle_common_types ‑ shard_state_versions::tests::it_deserializes_if_serialized_vec_is_within_bounds
tari_ootle_common_types ‑ shard_state_versions::tests::it_errors_if_more_then_max_shards
tari_ootle_common_types ‑ shard_state_versions::tests::it_errors_if_serialized_vec_is_empty
tari_ootle_common_types ‑ shard_state_versions::tests::it_errors_if_serialized_vec_is_too_large
tari_ootle_common_types ‑ shard_state_versions::tests::it_gets_by_index
tari_ootle_common_types ‑ shard_state_versions::tests::it_gets_by_shard
tari_ootle_common_types ‑ substate_address::tests::max_committees
tari_ootle_common_types ‑ substate_address::tests::shard_group_to_substate_address_range::it_works
tari_ootle_common_types ‑ substate_address::tests::substate_addresses_to_from_u256_endianness_matches
tari_ootle_common_types ‑ substate_address::tests::to_committee_shard_and_shard_range_match
tari_ootle_common_types ‑ substate_address::tests::to_shard
tari_ootle_common_types ‑ substate_address::tests::to_shard_group::it_matches_num_preshard_all_shard_iter
tari_ootle_common_types ‑ substate_address::tests::to_shard_group::it_returns_the_correct_shard_group
tari_ootle_common_types ‑ substate_address::tests::to_shard_group::it_returns_the_correct_shard_group_for_odd_num_committees
tari_ootle_common_types ‑ substate_address::tests::to_shard_group::it_returns_the_correct_shard_group_generic
tari_ootle_common_types ‑ uint::tests::u256_one
tari_ootle_common_types ‑ versioned_substate_id::tests::it_hashes_identically_to_a_substate_id
tari_ootle_storage ‑ consensus_models::block_pledges::tests::basic
tari_ootle_storage ‑ consensus_models::command::tests::ordering
tari_ootle_storage ‑ consensus_models::evidence::tests::it_merges_two_evidences_together
tari_ootle_storage ‑ consensus_models::transaction_pool::tests::calculate_leader_fee::it_calculates_the_correct_leader_fee
tari_ootle_storage ‑ consensus_models::transaction_pool::tests::calculate_leader_fee::simple_fuzz
tari_ootle_storage ‑ consensus_models::transaction_pool::tests::ordering::it_is_ordered_correctly
tari_ootle_storage_sqlite::global_db ‑ change_committee_shard_group
tari_ootle_storage_sqlite::global_db ‑ insert_and_get_within_epoch
tari_ootle_wallet_cli ‑ table::test::renders_rows_with_titles
tari_ootle_wallet_cli ‑ table::test::renders_titles
tari_ootle_wallet_crypto ‑ confidential::tests::it_is_invalid_if_minimum_value_changed
tari_ootle_wallet_crypto ‑ confidential::tests::it_is_valid_if_proof_is_valid
tari_ootle_wallet_crypto ‑ encrypted_data::tests::it_encrypts_and_decrypts
tari_ootle_wallet_crypto ‑ kdfs::tests::it_does_not_produce_the_same_secret_when_switching_params
tari_ootle_wallet_crypto ‑ kdfs::tests::it_generates_the_correct_private_stealth_address
tari_ootle_wallet_crypto ‑ stealth::tests::it_is_invalid_if_minimum_value_changed
tari_ootle_wallet_crypto ‑ stealth::tests::it_is_valid_if_proof_is_valid
tari_ootle_wallet_crypto ‑ value_lookup::io_reader_value_lookup::tests::it_reads_from_the_data_file_until_end
tari_ootle_wallet_crypto ‑ value_lookup::io_reader_value_lookup::tests::it_reads_non_sequential_values
tari_ootle_wallet_crypto ‑ value_lookup::io_reader_value_lookup::tests::it_reads_the_header_correctly
tari_ootle_wallet_crypto::output_statement ‑ it_create_a_valid_revealed_only_proof
tari_ootle_wallet_crypto::output_statement ‑ stealth_tests::it_creates_a_valid_statement
tari_ootle_wallet_crypto::output_statement ‑ stealth_tests::it_creates_a_valid_statement_with_revealed
tari_ootle_wallet_crypto::output_statement ‑ stealth_tests::it_creates_a_valid_statement_with_revealed_only
tari_ootle_wallet_crypto::output_statement ‑ stealth_tests::it_errors_for_noop_transfer
tari_ootle_wallet_crypto::viewable_balance_proof ‑ it_allows_no_balance_proof_for_no_view_key
tari_ootle_wallet_crypto::viewable_balance_proof ‑ it_errors_no_balance_proof_with_view_key
tari_ootle_wallet_crypto::viewable_balance_proof ‑ it_errors_with_balance_proof_and_no_view_key
tari_ootle_wallet_crypto::viewable_balance_proof ‑ it_generates_a_valid_proof
tari_ootle_wallet_crypto::viewable_balance_proof ‑ serialize_deserialize
tari_ootle_wallet_sdk::confidential_output_api ‑ outputs_locked_and_finalized
tari_ootle_wallet_sdk::confidential_output_api ‑ outputs_locked_and_released
tari_ootle_wallet_sdk::crypto_api ‑ encrypted_data::it_derives_the_same_encrypted_data_key_for_sender_and_recipient
tari_ootle_wallet_sdk::crypto_api ‑ encrypted_data::it_encrypts_then_decrypts
tari_ootle_wallet_sdk::crypto_api ‑ stealth_address::it_does_not_produce_the_same_secret_when_switching_params
tari_ootle_wallet_sdk::crypto_api ‑ stealth_address::it_generates_the_correct_private_stealth_address
tari_ootle_wallet_sdk::crypto_api ‑ utxo_tag::it_generates_the_same_tag_on_the_sender_and_recipient
tari_ootle_wallet_sdk::key_manager ‑ it_generates_new_account_addresses
tari_ootle_wallet_storage_sqlite::accounts ‑ update_account
tari_ootle_wallet_storage_sqlite::config ‑ get_and_set_value
tari_ootle_wallet_storage_sqlite::key_manager_state ‑ get_and_set_branch_index
tari_ootle_wallet_storage_sqlite::substates ‑ get_and_insert_substates
tari_ootle_wallet_storage_sqlite::transaction ‑ get_and_insert_transaction
tari_rpc_framework ‑ body::test::single_body
tari_rpc_framework ‑ body::test::streaming_body
tari_rpc_framework ‑ bounded_executor::test::spawn
tari_rpc_framework ‑ status::test::rpc_status_code_conversions
tari_rpc_framework ‑ status::test::rpc_status_or_optional
tari_state_store_rocksdb ‑ codecs::small_bytes::tests::from_slices
tari_state_store_rocksdb ‑ codecs::small_bytes::tests::heap_vs_stack
tari_state_store_rocksdb ‑ codecs::state_tree::tests::encode_decode
tari_state_store_rocksdb ‑ codecs::state_tree::tests::smoke
tari_state_store_rocksdb ‑ codecs::substate_id::tests::check_with_prefix
tari_state_store_rocksdb ‑ codecs::substate_id::tests::encode_decode
tari_state_store_rocksdb ‑ codecs::versioned::tests::default_codec_allows_updates_to_versioned_type
tari_state_store_rocksdb ‑ tests::it_iterates_over_epoch_heights_ordering
tari_state_store_rocksdb ‑ tests::it_iterates_using_the_prefix
tari_state_store_rocksdb ‑ tests::it_puts_and_retrieves
tari_state_tree::test ‑ hash_allows_putting_in_same_version
tari_state_tree::test ‑ hash_computed_consistently_after_adding_higher_tier_sibling
tari_state_tree::test ‑ hash_computed_consistently_after_higher_tier_leafs_deleted
tari_state_tree::test ‑ hash_differs_when_states_only_differ_by_node_key
tari_state_tree::test ‑ hash_differs_when_states_only_differ_by_value
tari_state_tree::test ‑ hash_of_next_version_differs_when_entry_added
tari_state_tree::test ‑ hash_of_next_version_differs_when_entry_removed
tari_state_tree::test ‑ hash_of_next_version_differs_when_value_changed
tari_state_tree::test ‑ hash_of_next_version_same_when_write_empty
tari_state_tree::test ‑ hash_of_next_version_same_when_write_repeated
tari_state_tree::test ‑ hash_returns_to_same_when_previous_state_restored
tari_state_tree::test ‑ proofs
tari_state_tree::test ‑ records_stale_tree_node_keys
tari_state_tree::test ‑ serialized_keys_are_strictly_increasing
tari_state_tree::test ‑ supports_empty_state
tari_swarm ‑ protocol_version::tests::it_parses_correctly
tari_template_builtin::nft_faucet ‑ basic_nft_mint
tari_template_builtin::nft_faucet ‑ mint_multiple_times
tari_template_lib ‑ args::freeze_flags::tests::it_iterates
tari_template_lib ‑ args::freeze_flags::tests::it_unions_bits
tari_template_lib ‑ args::freeze_flags::tests::it_validates_if_all_flags_are_known
tari_template_lib ‑ args::result::tests::unit_decode
tari_template_lib ‑ auth::access_rules::tests::it_builds_correct_access_rules
tari_template_lib ‑ component::instance::tests::it_serializes_as_a_component_address
tari_template_lib ‑ models::binary_tag::tests::from_and_as_u64_parity
tari_template_lib ‑ models::metadata::tests::metadata_macro
tari_template_lib ‑ models::non_fungible::tests::canonical_string::it_generates_correct_canonical_string
tari_template_lib ‑ models::non_fungible::tests::canonical_string::it_generates_the_correct_length_for_ints
tari_template_lib ‑ models::non_fungible::tests::canonical_string::it_parses_a_display_string
tari_template_lib ‑ models::non_fungible::tests::non_fungible_address_string::it_parses_valid_strings
tari_template_lib ‑ models::non_fungible::tests::non_fungible_address_string::it_rejects_invalid_strings
tari_template_lib ‑ models::non_fungible::tests::serde_deser::string_serialization_and_deserialization
tari_template_lib ‑ models::non_fungible::tests::try_from_string::it_allows_a_valid_string
tari_template_lib ‑ models::non_fungible::tests::try_from_string::it_fails_for_an_invalid_string
tari_template_lib ‑ models::resource::tests::hex_deser::string_serialization_and_deserialization
tari_template_lib ‑ models::utxo::tests::it_parses_from_strings
tari_template_lib_types ‑ amount::amount::tests::basic_arithmetic
tari_template_lib_types ‑ amount::amount::tests::can_de_serialize_using_cbor
tari_template_lib_types ‑ amount::amount::tests::can_serialize
tari_template_lib_types ‑ amount::amount::tests::checked_arithmetic
tari_template_lib_types ‑ amount::amount::tests::consts
tari_template_lib_types ‑ amount::amount::tests::to_from_str
tari_template_lib_types ‑ amount::amount::tests::to_le_bytes
tari_template_lib_types ‑ amount::amount::tests::u64_ord
tari_template_lib_types ‑ amount::public_macros::tests::consts
tari_template_lib_types ‑ amount::serde::tests::bincode_encoding_decoding
tari_template_lib_types ‑ amount::serde::tests::cbor_encoding_decoding
tari_template_lib_types ‑ amount::serde::tests::json_encoding_decoding
tari_template_lib_types ‑ crypto::commitment_signature::tests::to_and_from_bytes
tari_template_lib_types ‑ crypto::ristretto::tests::borsh_tests::matches_tari_crypto_impl
tari_template_lib_types ‑ crypto::ristretto::tests::serialize_deserialize_bor
tari_template_lib_types ‑ crypto::schnorr::tests::to_and_from_bytes
tari_template_lib_types ‑ hash::tests::serialize_deserialize
tari_template_lib_types ‑ serde_helpers::tests::decode_encode_json
tari_template_lib_types ‑ serde_helpers::tests::encode_decode_cbor
tari_template_macros ‑ template::definition::tests::test_codegen
tari_transaction ‑ args::tests::args_macro
tari_transaction ‑ builder::named_args::tests::args_macro
tari_transaction ‑ builder::tests::it_converts_workspace_names_to_ids
tari_transaction ‑ special_json_arg_syntax::tests::convert_json_to_arg::it_parses_literal_json
tari_transaction ‑ special_json_arg_syntax::tests::convert_json_to_arg::it_parses_workspace_json
tari_transaction ‑ special_json_arg_syntax::tests::it_errors_if_amount_cast_is_incorrect
tari_transaction ‑ special_json_arg_syntax::tests::it_parses_addresses
tari_transaction ‑ special_json_arg_syntax::tests::it_parses_amounts
tari_transaction ‑ special_json_arg_syntax::tests::it_parses_args_into_bor
tari_transaction ‑ special_json_arg_syntax::tests::it_parses_integers
tari_transaction ‑ special_json_arg_syntax::tests::it_parses_template_addresses
tari_transaction ‑ special_json_arg_syntax::tests::it_parses_workspace_references
tari_transaction ‑ special_json_arg_syntax::tests::it_returns_string_lit_if_string_or_unknown
tari_transaction ‑ special_json_arg_syntax::tests::struct_test
tari_transaction ‑ transaction::tests::it_correctly_signs_and_verifies
tari_transaction ‑ transaction::tests::it_encodes_and_decodes_without_errors
tari_transaction ‑ v1::instruction::tests::decode_encode
tari_transaction_manifest ‑ value::tests::it_parses_address_strings
tari_transaction_manifest::parser ‑ manifest_smoke_test
tari_validator_node ‑ tests::preload_crypto_services_does_not_panic
tari_validator_node ‑ transaction_validators::dry_run::tests::dry_run_tx_not_allowed
tari_validator_node ‑ transaction_validators::dry_run::tests::non_dry_run_tx_allowed
tari_validator_node ‑ transaction_validators::network::tests::network_mismatch
tari_validator_node ‑ transaction_validators::network::tests::network_ok
tari_validator_node ‑ transaction_validators::network::tests::unknown_network
tari_validator_node_cli ‑ table::test::renders_rows_with_titles
tari_validator_node_cli ‑ table::test::renders_titles
transaction_submitter::bin/transaction_submitter ‑ bounded_spawn::test::spawn