(a) import-resolve: 9 OUTSIDE_REPO faults -> 0 over 138 graded files. The eight
lanes' test files now insert str(Path(__file__).resolve().parent) and resolve
their data paths from __file__; test_hermes.py is rewritten as the host probe it
always was (skills root from HERMES_SKILLS_DIR/HERMES_HOME/~/.hermes/skills, rc 0
found / 77 SKIP / 1 FAIL) instead of binding a module that does not exist.
Falsified: poisoning the repo copy reds the rebound test (rc 1) and leaves HEAD's
host-bound copy green (rc 0), both restored.
(b) path-claims: 225 new -> 0. All 225 came from sol's untracked-file census; each
was measured (0 add-commits on any ref, present on disk untracked, listed verbatim
in the census) and is a NOT_ADDED row under a batch note. One CLEARED row dropped
(spark/lwc_counter.py, resurrected at 3e667eb after Q125 retired it).
Carried in, not authored here: tools/verify.py's ninth leg and the two-line Q98
record (Sentinel's Q98 artifact), so HEAD agrees with Q98's own text.
verify --repo .: 9 legs, 9 pass, 0 fault -- gate OK. Report:
/root/.hermes/wizard-outputs/volt/2026-10-30-q126.md
32 lines
817 B
Python
32 lines
817 B
Python
#!/usr/bin/env python3
|
|
"""Test file for array_intersection.py"""
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
sys.path.insert(0, str(Path(__file__).resolve().parent))
|
|
from array_intersection import array_intersection
|
|
|
|
# Test cases
|
|
tests = [
|
|
([1, 2, 3, 4, 5], [3, 4, 5, 6, 7], [3, 4, 5]),
|
|
([1, 1, 2, 2], [2, 2, 3, 3], [2]),
|
|
([], [1, 2, 3], []),
|
|
([1, 2, 3], [], []),
|
|
(['a', 'b'], ['b', 'c'], ['b']),
|
|
]
|
|
|
|
all_passed = True
|
|
for arr1, arr2, expected in tests:
|
|
result = array_intersection(arr1, arr2)
|
|
if result != expected:
|
|
print(f'FAIL: {arr1} ∩ {arr2} = {result}, expected {expected}')
|
|
all_passed = False
|
|
else:
|
|
print(f'PASS: {arr1} ∩ {arr2} = {result}')
|
|
|
|
if all_passed:
|
|
print('All tests passed!')
|
|
sys.exit(0)
|
|
else:
|
|
print('Some tests failed!')
|
|
sys.exit(1) |