Skip to content

test: xfail v1 UNI-exchange price-output cases (no liquidity) - #479

Open
TimeToBuildBob wants to merge 1 commit into
uniswap-python:masterfrom
TimeToBuildBob:fix/v1-uni-price-xfail
Open

TimeToBuildBob wants to merge 1 commit into
uniswap-python:masterfrom
TimeToBuildBob:fix/v1-uni-price-xfail

Conversation

@TimeToBuildBob

Copy link
Copy Markdown
Contributor

Problem

The test (v1, mainnet) job fails on every PR with 3 identical failures: the ETH-UNI / UNI-ETH test_get_price_output parametrizations hit the Uniswap v1 UNI exchange contract, which has no remaining liquidity — the Vyper bytecode raises EVM error InvalidJump. This is pre-existing (same failures on the first push of #478) and unrelated to any current change.

Fix

Runtime pytest.xfail() in test_get_price_output when version == 1 and the pair involves UNI. v2/v3 UNI cases keep passing, and any other v1 pair is unaffected. 2 lines.

Verification

Ref: #478

…dJump)

The three ETH-UNI / UNI-ETH test_get_price_output parametrizations fail on the
v1 mainnet job because the v1 UNI exchange contract has no remaining liquidity
and the Vyper bytecode hits EVM error InvalidJump. This is pre-existing
(depot unchanged since the branch's first push) and blocks every PR's CI.

Runtime-xfail only fires for version==1 UNI pairs; v2/v3 UNI cases keep passing.

Git-Session-Id: 3d27
@codecov

codecov Bot commented Sep 1, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.26%. Comparing base (bc8fdf4) to head (9fcbe22).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #479   +/-   ##
=======================================
  Coverage   73.26%   73.26%           
=======================================
  Files          12       12           
  Lines        2319     2319           
=======================================
  Hits         1699     1699           
  Misses        620      620           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@greptile-apps

greptile-apps Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR marks the three V1 UNI exact-output quote cases as expected failures because the liquidity-free legacy exchange reverts on the mainnet fork.

  • Limits the runtime xfail to V1 cases involving UNI.
  • Leaves V2/V3 UNI cases and all non-UNI V1 cases unchanged.

Confidence Score: 5/5

The PR appears safe to merge because the new condition covers exactly the documented failing V1 UNI output-price cases.

The xfail is restricted by both protocol version and token symbol, while every intercepted parameterization reaches the legacy UNI exchange and previously fails rather than taking the existing unsupported-pair skip.

Important Files Changed

Filename Overview
tests/test_uniswap.py Adds a narrowly scoped runtime xfail for the three documented V1 UNI output-price cases without suppressing other parameterizations.

Reviews (1): Last reviewed commit: "test: xfail v1 UNI-exchange price-output..." | Re-trigger Greptile

@TimeToBuildBob

Copy link
Copy Markdown
Contributor Author

Friendly ping for review when you get a chance — all 7 checks are green on this one (including the previously-failing v1 mainnet job). Once it merges, PR #478's last red check should resolve on re-run.

TimeToBuildBob added a commit to TimeToBuildBob/uniswap-python that referenced this pull request Sep 2, 2026
Same fix as uniswap-python#479 — the v1 UNI exchange has no remaining liquidity so
get_price_output raises EVM error InvalidJump on mainnet fork.

Git-Session-Id: 8f77

This branch has not been deployed

No deployments
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.

1 participant