Skip to content

test: drop the r1_lite fake-e2e harness tests, whose module is not in the repo - #18

Merged
Noietch merged 1 commit into
Noietch:mainfrom
rakhimovv:chore/drop-orphaned-r1lite-e2e-tests
Sep 8, 2026
Merged

Noietch merged 1 commit into
Noietch:mainfrom
rakhimovv:chore/drop-orphaned-r1lite-e2e-tests

Conversation

@rakhimovv

@rakhimovv rakhimovv commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Thanks for the offline test suite — being able to run all of it with no ROS and no hardware is genuinely unusual, and it made this easy to track down.

The question behind the PR: should tests/hardware/test_r1lite_fake_e2e_harness.py be dropped, or is tools/run_r1lite_fake_e2e.py meant to ship again? I went with dropping it for the reason below, but this is your call and I'm happy to redo it the other way.

What I ran into

On a fresh clone of main at 0e0e5f8 (Python 3.11, uv pip install -e ".[dev]"), all six tests in that file fail with the same cause:

FileNotFoundError: [Errno 2] No such file or directory:
  '.../tools/run_r1lite_fake_e2e.py'

The module exec_modules that path at tests/hardware/test_r1lite_fake_e2e_harness.py:17 and reads it again at :59. The file is not in the tree, and .gitignore:32-37 ignores tools/* with an allow-list for __init__.py, conversion/ and skills/.

History, if it helps:

  • 58a848b (2026-07-08) added the tool and the tests together
  • 9e98a3e (2026-07-09, Revert "Update R1 Lite hardware launch docs and profiles" #4) reverted both
  • 7e630f5 (2026-07-20) re-added both
  • da08620 (2026-07-20) rewrote .gitignore and deleted tools/run_r1lite_fake_e2e.py, leaving the test file behind — which is presumably why these six now fail on a clean checkout

.github/workflows/ has only format-check.yml and format-fix.yml, both Ruff-only, which is likely why this hasn't surfaced in CI. Mentioning that only as context, not as a suggestion to add more CI.

Why removal rather than restoring the module

I tried restoring it first. git show 7e630f5:tools/run_r1lite_fake_e2e.py puts the file back, but the tests still fail — one step later:

ModuleNotFoundError: No module named 'browser_cdp'

The harness imports a sibling browser_cdp (Chrome DevTools driving) at module scope, and that module was removed in the same commit and is not tracked either. So reviving these tests would mean re-shipping two local dev modules, which the tools/* rule suggests wasn't the intent.

Removing the file makes pytest reflect what the repo can actually run. If the harness is meant to ship, I'd be glad to restore both modules behind a .gitignore allow-list instead, the way #14 does for tools/mcp — just say which you'd prefer.

After this change

Measured in the same fully set-up checkout (submodules initialised, adapter envs built), pytest goes from 8 failed, 1172 passed, 1 skipped on main to 2 failed, 1172 passed, 1 skipped with this branch. The passed count is deliberately unchanged — this removes six failing tests rather than making them pass. The two that remain are the resets == [True] assertions in tests/config/test_control_state.py, which #14 already fixes, so nothing is needed here for them. ruff check . and ruff format --check . are clean.

For contrast, a bare clone with only the root venv reports 10 failed, 1166 passed, 4 skipped before this change: the two extra failures and three extra skips come from git submodule update --init and examples/hardware/r1_lite/setup_env.sh not having been run, not from anything this PR touches. That looks like it's working as intended — I mention it only because docs/development.md:16 says "No ROS install or hardware required — the robot side is faked." I had read that as meaning a bare checkout should be green, and it took me a little while to work out which failures were mine and which weren't. That may well be my misreading rather than anything wrong with the docs.

… the repo

`tests/hardware/test_r1lite_fake_e2e_harness.py` loads
`tools/run_r1lite_fake_e2e.py` via `exec_module`, but that file is not
tracked. It was added in 7e630f5 and removed again in da08620, which
rewrote .gitignore in the same commit and left the test file behind. All
six tests in it have failed on a clean checkout since then with
FileNotFoundError. CI runs Ruff only, so nothing surfaced it.

Restoring the module does not revive them: it imports a sibling
`browser_cdp` (Chrome DevTools driving) that was removed in the same
commit and is not tracked either, so the tests fail at import with
ModuleNotFoundError. Reviving this would mean re-shipping two local dev
modules, which .gitignore's `tools/*` rule suggests was not the intent.

Removing the file makes `pytest` reflect what the repo can actually run.
Happy to restore both modules behind a .gitignore allow-list instead, as
Noietch#14 does for tools/mcp, if the harness is meant to ship.
@Noietch
Noietch merged commit 181e637 into Noietch:main Sep 8, 2026
1 check passed
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