| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
test package for Edge Python: a tiny test harness written in pure Edge Python (not a wasm native module). Fixtures, test registration, exception assertions, and a runner that reports pass/fail and exits with a status code.
from test import fixture, test, raises, run
@fixture
def user():
return {"name": "Ana"}
@test("user has a name", "user")
def test_name(user):
assert user["name"] == "Ana"
@test("division by zero raises")
def test_div():
with raises(ZeroDivisionError):
1 / 0
run() # prints PASS/FAIL lines and a summary, then raises SystemExit(0 if all passed else 1)| Name | Signature | Purpose |
|---|---|---|
| fixture | @fixture on def | Register a fixture under its __name__; injected by keyword into tests that name it. |
| test | @test(description, *uses) | Register a test; uses names fixtures passed in fresh per run. |
| raises | with raises(ExcType): | Context manager asserting the block raises ExcType (or a subclass): swallows it, re-raises a mismatch, and fails if nothing is raised. |
| run | run() | Run every registered test, print PASS/FAIL/ERROR lines and a summary, then raise SystemExit(1 if any failed else 0). |
A failing assert is reported as FAIL; any other exception as ERROR with its class name. Fixtures are instantiated fresh for each test (no caching across tests). raises accepts a class or a tuple of classes.
run() raises SystemExit so a host can read pass/fail as a process exit code (0 all passed, 1 otherwise). SystemExit is caught by except SystemExit / except BaseException / a bare except, but not by except Exception. See Limits and errors.
Pure Edge Python source (no cargo build); the package entry is src/entry.py, imported as a code module via packages.json. This differs from the wasm packages (re, math, json), whose entry is src/lib.rs built to <pkg>.wasm.
License: MIT OR Apache-2.0
| Back | FazBrowse Home | New Git URL |