structure saas with tools
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
"""
|
||||
A benchmark for comparing equivalent validation of `const` and `enum`.
|
||||
"""
|
||||
|
||||
from pyperf import Runner
|
||||
|
||||
from jsonschema import Draft202012Validator
|
||||
|
||||
value = [37] * 100
|
||||
const_schema = {"const": list(value)}
|
||||
enum_schema = {"enum": [list(value)]}
|
||||
|
||||
valid = list(value)
|
||||
invalid = [*valid, 73]
|
||||
|
||||
const = Draft202012Validator(const_schema)
|
||||
enum = Draft202012Validator(enum_schema)
|
||||
|
||||
assert const.is_valid(valid)
|
||||
assert enum.is_valid(valid)
|
||||
assert not const.is_valid(invalid)
|
||||
assert not enum.is_valid(invalid)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
runner = Runner()
|
||||
runner.bench_func("const valid", lambda: const.is_valid(valid))
|
||||
runner.bench_func("const invalid", lambda: const.is_valid(invalid))
|
||||
runner.bench_func("enum valid", lambda: enum.is_valid(valid))
|
||||
runner.bench_func("enum invalid", lambda: enum.is_valid(invalid))
|
||||
Reference in New Issue
Block a user