Skip to content

Fix failing e2e tests in test_viem_tx#293

Merged
Kourin1996 merged 6 commits intocelo11from
Kourin1996/fix-e2e-test_viem_tx
Dec 17, 2024
Merged

Fix failing e2e tests in test_viem_tx#293
Kourin1996 merged 6 commits intocelo11from
Kourin1996/fix-e2e-test_viem_tx

Conversation

@Kourin1996
Copy link
Copy Markdown

Fixes https://github.com/celo-org/celo-blockchain-planning/issues/844

This PR fixes failing e2e tests e2e_test/js-tests/test_viem_tx.mjs

Fixes made

  • send overlapping nonce tx in different currencies
    • Fixes calculation of failToBumpCurrencyCap. The original calculation converted (native token fee) - 1 to the token fee value by multiplying it by numerator and dividing it by a large denominator. However, this division effectively negated the decrement operation. The new calculation make sure to get a lower fee rather than the given amount.
    • Increases timeout to 60s (It takes around 50s when running locally)
  • send fee currency tx with just high enough gas price
    • Casts from BigInt to Number because chai's assert functions reject BigInt arguments for integers comparison

How to check locally

export NETWORK=alfajores
./e2e_test/run_all_tests.sh viem

@Kourin1996 Kourin1996 self-assigned this Dec 10, 2024
@Kourin1996 Kourin1996 marked this pull request as draft December 10, 2024 14:11
@Kourin1996 Kourin1996 marked this pull request as ready for review December 10, 2024 22:25
Copy link
Copy Markdown

@piersy piersy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @Kourin1996 it's great to have these tests working again!

@Kourin1996 Kourin1996 changed the base branch from celo10 to celo11 December 17, 2024 13:46
@Kourin1996 Kourin1996 changed the base branch from celo11 to celo10 December 17, 2024 13:47
@Kourin1996 Kourin1996 force-pushed the Kourin1996/fix-e2e-test_viem_tx branch from edf019e to 69234e4 Compare December 17, 2024 14:14
@Kourin1996 Kourin1996 changed the base branch from celo10 to celo11 December 17, 2024 14:14
@Kourin1996 Kourin1996 merged commit e49dd9e into celo11 Dec 17, 2024
@Kourin1996 Kourin1996 deleted the Kourin1996/fix-e2e-test_viem_tx branch December 17, 2024 14:24
karlb pushed a commit that referenced this pull request Jan 27, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
karlb pushed a commit that referenced this pull request Jan 28, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
karlb pushed a commit that referenced this pull request Feb 3, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
karlb pushed a commit that referenced this pull request Feb 11, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
piersy pushed a commit that referenced this pull request Apr 8, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
piersy pushed a commit that referenced this pull request Apr 9, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
piersy pushed a commit that referenced this pull request Apr 9, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
piersy pushed a commit that referenced this pull request Apr 9, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
piersy pushed a commit that referenced this pull request Apr 9, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
piersy pushed a commit that referenced this pull request Apr 11, 2025
* Fix failing e2e tests in test_viem_tx

* Add timeout for some failing tests

* Add comments about new sleep in e2e test

* Add sleep in test_token_duality

* Revert adding sleep in e2e tests

* Fix price coefficient of tx which can't be replaced in test_viem_tx e2e test
ezdac pushed a commit that referenced this pull request Apr 30, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 1, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 1, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 1, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 2, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 6, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 6, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 8, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 12, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 22, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
piersy added a commit that referenced this pull request May 22, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 20, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 21, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 26, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 28, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 30, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 30, 2025
Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 31, 2025
…ores (#212,#258,#268,#293)

Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 31, 2025
…ores (#212,#258,#268,#293)

Refactors debug fee currency deployment ensuring fee currency cleanup. The
geth-devmode predeployed "oracle3" is reused throughout the e2e tests
for all dynamically deployed fee-currencies. However the tested
fee-currencies are never removed from the FeeCurrencyDirectory.

This causes the node to try to query exchange-rates for the leftover
fee-currencies. This fails, because the oracle associated with the old
fee-currency has a different token address assigned and thus causes a
revert. This issue is not critical and only causes emission of a log
message and some unneccessary evm calls,
but it is better practice to clean up the fee-currency from the
directory anyways.

Also adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

Allows tests to be run on Alfajores. This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Also adds tests for fee currency use with the gas price RPC API

Skips test_fee_currency_fails_on_credit.sh as it seems to be broken.
Kourin1996 pushed a commit that referenced this pull request Jul 31, 2025
Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>
Kourin1996 added a commit that referenced this pull request Aug 1, 2025
#293)

Co-authored-by: Pastoh <hbandura@users.noreply.github.com>
Co-authored-by: kourin <yoshiki.takabayashi@clabs.co>
Kourin1996 pushed a commit that referenced this pull request Aug 1, 2025
Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>
Kourin1996 added a commit that referenced this pull request Aug 3, 2025
#293)

Co-authored-by: Pastoh <hbandura@users.noreply.github.com>
Co-authored-by: kourin <yoshiki.takabayashi@clabs.co>
Kourin1996 pushed a commit that referenced this pull request Aug 3, 2025
Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>
Kourin1996 pushed a commit that referenced this pull request Aug 4, 2025
…m test (#43, #55, #293)

Co-authored-by: Pastoh <hbandura@users.noreply.github.com>
Co-authored-by: kourin <yoshiki.takabayashi@clabs.co>

e2e(js): Loosen error check condition in e2e-test (#380)

Due to possible expansion of the responses error string in potential
proxy setups on a live RPC endpoint, the strict error check in the e2e
viem test caused the test to fail, although the error condition was
expected.

e2e(js): Add test of sending CIP-64 tx with unregistered fee currency in viem e2e test

e2e(js): Run e2e tests on alfajores (#212, #258, #268, #293)

Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>

e2e(js): Get extra intrinsic gas for custom fee currency in e2e (#335)

* Get IntrinsicGas for custom fee currency in e2e

* Rename function name and add comments

* Add missing await

* Fix wrong method call

* Fix codes based reviews
Kourin1996 pushed a commit that referenced this pull request Aug 4, 2025
…m test (#43, #55, #293)

Co-authored-by: Pastoh <hbandura@users.noreply.github.com>
Co-authored-by: kourin <yoshiki.takabayashi@clabs.co>

e2e(js): Loosen error check condition in e2e-test (#380)

Due to possible expansion of the responses error string in potential
proxy setups on a live RPC endpoint, the strict error check in the e2e
viem test caused the test to fail, although the error condition was
expected.

e2e(js): Add test of sending CIP-64 tx with unregistered fee currency in viem e2e test

e2e(js): Run e2e tests on alfajores (#212, #258, #268, #293)

Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>

e2e(js): Get extra intrinsic gas for custom fee currency in e2e (#335)

* Get IntrinsicGas for custom fee currency in e2e

* Rename function name and add comments

* Add missing await

* Fix wrong method call

* Fix codes based reviews
Kourin1996 pushed a commit that referenced this pull request Aug 4, 2025
…m test (#43, #55, #293)

Co-authored-by: Pastoh <hbandura@users.noreply.github.com>
Co-authored-by: kourin <yoshiki.takabayashi@clabs.co>

e2e(js): Loosen error check condition in e2e-test (#380)

Due to possible expansion of the responses error string in potential
proxy setups on a live RPC endpoint, the strict error check in the e2e
viem test caused the test to fail, although the error condition was
expected.

e2e(js): Add test of sending CIP-64 tx with unregistered fee currency in viem e2e test

e2e(js): Run e2e tests on alfajores (#212, #258, #268, #293)

Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>

e2e(js): Get extra intrinsic gas for custom fee currency in e2e (#335)

* Get IntrinsicGas for custom fee currency in e2e

* Rename function name and add comments

* Add missing await

* Fix wrong method call

* Fix codes based reviews
Kourin1996 pushed a commit that referenced this pull request Aug 4, 2025
…m test (#43, #55, #293)

Co-authored-by: Pastoh <hbandura@users.noreply.github.com>
Co-authored-by: kourin <yoshiki.takabayashi@clabs.co>

e2e(js): Loosen error check condition in e2e-test (#380)

Due to possible expansion of the responses error string in potential
proxy setups on a live RPC endpoint, the strict error check in the e2e
viem test caused the test to fail, although the error condition was
expected.

e2e(js): Add test of sending CIP-64 tx with unregistered fee currency in viem e2e test

e2e(js): Run e2e tests on alfajores (#212, #258, #268, #293)

Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>

e2e(js): Get extra intrinsic gas for custom fee currency in e2e (#335)

* Get IntrinsicGas for custom fee currency in e2e

* Rename function name and add comments

* Add missing await

* Fix wrong method call

* Fix codes based reviews
Kourin1996 pushed a commit that referenced this pull request Aug 4, 2025
…m test (#43, #55, #293)

Co-authored-by: Pastoh <hbandura@users.noreply.github.com>
Co-authored-by: kourin <yoshiki.takabayashi@clabs.co>

e2e(js): Loosen error check condition in e2e-test (#380)

Due to possible expansion of the responses error string in potential
proxy setups on a live RPC endpoint, the strict error check in the e2e
viem test caused the test to fail, although the error condition was
expected.

e2e(js): Add test of sending CIP-64 tx with unregistered fee currency in viem e2e test

e2e(js): Run e2e tests on alfajores (#212, #258, #268, #293)

Adds a test of transactions that exceed the max intrinsic gas for a fee
currency, this checks that the transaction fails and the fee currency is
blocked.

This entailed increasing gas limits
for a number of transactions that interact with fee currencies, since
the fee currencies on alfajores are different to our debug ones and also
tests needed to be updated to not rely on hardcoded fee currency rates.

Co-authored-by: Maximilian Langenfeld <15726643+ezdac@users.noreply.github.com>

e2e(js): Get extra intrinsic gas for custom fee currency in e2e (#335)

* Get IntrinsicGas for custom fee currency in e2e

* Rename function name and add comments

* Add missing await

* Fix wrong method call

* Fix codes based reviews
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants