Files
troupe-standup/wizard-work/spark/test_email_validator.py
T
ledger b14d73a8f4 volt: Q126 -- gate 9/9: nine host-bound test files rebound to the repo module, 225 census paths ledgered
(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
2026-10-30 05:37:30 +00:00

40 lines
1.1 KiB
Python

#!/usr/bin/env python3
"""Comprehensive test suite for email_validator.py"""
import sys
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent))
from email_validator import is_valid_email, validate_email
# Test cases: (email, expected_valid)
tests = [
# Valid emails
("user@example.com", True),
("test.email@domain.co.uk", True),
("user+tag@example.org", True),
("UPPERCASE@EXAMPLE.COM", True),
("user123@test-site.net", True),
# Invalid emails
("", False),
("invalid", False),
("@missing-local.com", False),
("missing-at-sign.com", False),
("user@", False),
("user@.com", False),
(" ", False),
(None, False),
]
all_passed = True
print("Running email validation tests...")
for email, expected in tests:
result = is_valid_email(email)
status = "PASS" if result == expected else "FAIL"
if result != expected:
all_passed = False
print(f" [{status}] {repr(email)}: got {result}, expected {expected}")
print(f"\nAll tests passed: {all_passed}")
sys.exit(0 if all_passed else 1)