Files
MoFin/venv/lib/python3.12/site-packages/jsonschema/benchmarks/useless_keywords.py
T
知微 fa45d8aa5f fix: 小果地址统一node122(兼容LAN+EasyTier)
- health_checklist.json: 192.168.1.122→node122
- ocr_client.py: docstring IP→node122
- docs/market-data-requirements.md: IP→node122
- 所有API调用通过ProxyHandler({})绕过系统代理
  Privoxy对node122:18003返回500,直连正常
2026-06-30 02:56:35 +08:00

33 lines
867 B
Python

"""
A benchmark for validation of schemas containing lots of useless keywords.
Checks we filter them out once, ahead of time.
"""
from pyperf import Runner
from jsonschema import Draft202012Validator
NUM_USELESS = 100000
schema = dict(
[
("not", {"const": 42}),
*((str(i), i) for i in range(NUM_USELESS)),
("type", "integer"),
*((str(i), i) for i in range(NUM_USELESS, NUM_USELESS)),
("minimum", 37),
],
)
validator = Draft202012Validator(schema)
valid = 3737
invalid = 12
if __name__ == "__main__":
runner = Runner()
runner.bench_func("beginning of schema", lambda: validator.is_valid(42))
runner.bench_func("middle of schema", lambda: validator.is_valid("foo"))
runner.bench_func("end of schema", lambda: validator.is_valid(12))
runner.bench_func("valid", lambda: validator.is_valid(3737))