1.8 KiB
1.8 KiB
STATUS — phase eval
Commit: 0323698
Gate Results
D1 — Arithmetic
Command and expected → observed:
| Expression | Expected | Observed |
|---|---|---|
python calc.py "2+3*4" |
14, exit 0 | 14, exit 0 ✓ |
python calc.py "(2+3)*4" |
20, exit 0 | 20, exit 0 ✓ |
python calc.py "8-3-2" |
3 | 3 ✓ (via unittest) |
python calc.py "-2+5" |
3 | 3 ✓ (via unittest) |
python calc.py "2*-3" |
-6 | -6 ✓ (via unittest) |
D1: PASS
D2 — Division / EvalError
| Check | Expected | Observed |
|---|---|---|
python calc.py "7/2" |
3.5, exit 0 | 3.5, exit 0 ✓ |
python calc.py "1/0" |
error to stderr, exit non-zero | error: division by zero to stderr, exit 1 ✓ |
EvalError raised (not ZeroDivisionError) |
EvalError | confirmed by unittest ✓ |
D2: PASS
D3 — Result type
| Expression | Expected type | Observed |
|---|---|---|
python calc.py "4/2" |
prints 2 (no .0) |
2 ✓ |
python calc.py "7/2" |
prints 3.5 |
3.5 ✓ |
calc("4/2") returns int |
isinstance(result, int) |
True ✓ |
calc("7/2") returns float |
isinstance(result, float) |
True ✓ |
D3: PASS
D4 — CLI
| Command | Expected | Observed |
|---|---|---|
python calc.py "2+3*4" |
prints 14, exit 0 |
14, exit 0 ✓ |
python calc.py "1 +" |
error to stderr, exit non-zero | error: unexpected end of input to stderr, exit 1 ✓ |
python calc.py "1/0" |
error to stderr, exit non-zero | error: division by zero to stderr, exit 1 ✓ |
D4: PASS
D5 — Full suite green, no regression
Command: python -m unittest -q
----------------------------------------------------------------------
Ran 64 tests in 0.001s
OK
64 tests: lex (prior) + parse (prior) + eval (new) — all green, 0 failures.
D5: PASS