Annie Voigt commited on
Commit
808b91d
·
2 Parent(s): 8c82ce787ccc93

merge: rename the limma probe out of pytest's collection path

Browse files
docs/adr/ADR-0007-phase1-local-validation.md CHANGED
@@ -21,7 +21,7 @@ bridge's real streamable-http handshake was implemented (was a mock-only stub).
21
  - [x] `pytest tests/test_sandbox_executor.py tests/test_executor_seam.py` →
22
  **27/27** (was 22; +5 regression tests added for the fixes below).
23
  - ⚠ A single-invocation `pytest -q` **cannot collect** the whole repo: (a)
24
- `scripts/test_limma_runtime.py` is a standalone script that `sys.exit(1)`s at
25
  import when rpy2 is absent, and (b) the `tests/` files insert `sys.path`
26
  differently, so collecting them together pollutes `managers` import resolution.
27
  **Both are pre-existing and unrelated to this branch** (confirmed: not in the
 
21
  - [x] `pytest tests/test_sandbox_executor.py tests/test_executor_seam.py` →
22
  **27/27** (was 22; +5 regression tests added for the fixes below).
23
  - ⚠ A single-invocation `pytest -q` **cannot collect** the whole repo: (a)
24
+ `scripts/check_limma_runtime.py` is a standalone script that `sys.exit(1)`s at
25
  import when rpy2 is absent, and (b) the `tests/` files insert `sys.path`
26
  differently, so collecting them together pollutes `managers` import resolution.
27
  **Both are pre-existing and unrelated to this branch** (confirmed: not in the
pytest.ini CHANGED
@@ -1,11 +1,11 @@
1
  [pytest]
2
- # Bare `pytest` from the repo root used to die with an INTERNALERROR before
3
- # running a single test: pytest collects any `test_*.py`, and
4
- # scripts/test_limma_runtime.py is a standalone rpy2/limma diagnostic that calls
5
- # sys.exit(1) at import when rpy2 is absent which aborts collection outright.
6
- # It is named test_* because it is run by hand (`python scripts/test_limma_runtime.py`),
7
- # not because it is a pytest module.
8
  #
9
- # testpaths applies only when no path argument is given, so `pytest` and
10
- # `pytest tests/` now agree, and `pytest scripts/...` still works if wanted.
 
11
  testpaths = tests
 
1
  [pytest]
2
+ # Belt-and-braces. The actual fix was renaming the offender:
3
+ # scripts/test_limma_runtime.py -> scripts/check_limma_runtime.py. It is a
4
+ # hand-run rpy2/limma diagnostic that calls sys.exit(1) at import when rpy2 is
5
+ # absent, and pytest collected it on the test_* filename alone which aborted
6
+ # the whole run with an INTERNALERROR before a single test executed.
 
7
  #
8
+ # testpaths keeps that from recurring if another test_*.py is ever dropped into
9
+ # scripts/ or elsewhere outside tests/. It applies only when no path argument is
10
+ # given, so `pytest` and `pytest tests/` agree, and an explicit path still works.
11
  testpaths = tests
scripts/{test_limma_runtime.py → check_limma_runtime.py} RENAMED
@@ -3,7 +3,7 @@ Runtime test: verify the rpy2-limma bridge is functional.
3
 
4
  Run this in the Space terminal or locally after installing R and rpy2:
5
 
6
- python scripts/test_limma_runtime.py
7
 
8
  Expected output:
9
  R version: R version 4.x.x (...)
 
3
 
4
  Run this in the Space terminal or locally after installing R and rpy2:
5
 
6
+ python scripts/check_limma_runtime.py
7
 
8
  Expected output:
9
  R version: R version 4.x.x (...)