Metadata-Version: 2.5
Name: jevals
Version: 0.1.0
Summary: Run suites of JSON evaluations and report a score.
Project-URL: Homepage, https://pypi.org/project/jevals/
Project-URL: Issues, https://pypi.org/project/jevals/
Author-email: Gabriel Tinoco <gabriel@openlayer.com>
License-Expression: MIT
Keywords: eval,evaluation,jeval,json,suite,testing
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.10
Requires-Dist: jeval>=0.1.0
Description-Content-Type: text/markdown

# jevals

Run a suite of JSON evaluation cases and report a score.

```bash
pip install jevals
```

`jevals` depends on [`jeval`](https://pypi.org/project/jeval/) for the per-case checks.

```bash
jevals run examples/suite.json
jevals run examples/cases
```

A suite is a JSON object with `cases`, a JSON list of cases, or a directory of `.json` files:

```json
{
  "name": "checkout",
  "cases": [
    {
      "id": "order-total",
      "actual": {"total": 21, "currency": "USD"},
      "checks": [
        {"path": "total", "op": "eq", "value": 21},
        {"path": "currency", "op": "eq", "value": "USD"}
      ]
    }
  ]
}
```

Exit codes: `0` all passed, `1` some failed, `2` usage or file error.

```bash
jevals run examples/suite.json --json
jevals run examples/suite.json --fail-under 1.0
```
