Metadata-Version: 2.5
Name: otr-ctrf-bridge
Version: 0.1.0
Summary: Bidirectional converter between Open Test Reporting (OTR) and CTRF test report formats
License-Expression: Apache-2.0
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.9
Provides-Extra: test
Requires-Dist: jsonschema>=4.0; extra == 'test'
Requires-Dist: pytest>=7.0; extra == 'test'
Description-Content-Type: text/markdown

# otr-ctrf-bridge

Bidirectional converter between Open Test Reporting (OTR) and CTRF test report formats.
Zero runtime dependencies; Python ≥3.9.

## Usage

```
pip install otr-ctrf-bridge
otr-ctrf otr2ctrf events.xml -o ctrf-report.json
otr-ctrf ctrf2otr ctrf-report.json -o events.xml
```

## Status mapping

| OTR                       | CTRF          | rawStatus kept |
|---------------------------|---------------|----------------|
| SUCCESSFUL                | passed        |                |
| SKIPPED                   | skipped       |                |
| FAILED                    | failed        |                |
| ERRORED                   | failed        | ERRORED        |
| ABORTED                   | failed        | ABORTED        |

| CTRF            | OTR          |
|-----------------|--------------|
| passed          | SUCCESSFUL   |
| skipped         | SKIPPED      |
| pending         | SKIPPED      |
| failed          | FAILED       |
| other           | FAILED       |

## Validation

- CTRF output: validated against the official CTRF JSON schema (vendored in tests)
- OTR output: validated with the official OTR CLI (`java -jar open-test-reporting-cli.jar validate`)

## Development

```
pip install -e ".[test]"
python -m pytest tests/
```

## License

Apache-2.0. Formats belong to their respective projects:
OTR (JUnit team) and CTRF (ctrf-io).