mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-06 08:16:43 +00:00
44 lines
1.8 KiB
Markdown
44 lines
1.8 KiB
Markdown
# Expected Structure
|
|
|
|
```text
|
|
tests/rust-python-harness/
|
|
├── __main__.py
|
|
│
|
|
├── strategies/
|
|
│ ├── e2e_parity/
|
|
│ │ ├── runner.py
|
|
│ │ ├── sdk/
|
|
│ │ │ ├── ocr/
|
|
│ │ │ ├── messages/
|
|
│ │ │ ├── chat_completions/
|
|
│ │ │ └── responses/
|
|
│ │ └── gateway/
|
|
│ │
|
|
│ ├── trace_parity/
|
|
│ │ ├── runner.py
|
|
│ │ ├── sdk/
|
|
│ │ └── gateway/
|
|
│ │
|
|
│ └── unit_tests/
|
|
│ ├── runner.py
|
|
│ ├── mapping_validator.py
|
|
│ ├── python_runner.py
|
|
│ └── rust_runner.py
|
|
│
|
|
└── shared/
|
|
├── parity/
|
|
├── tracing/
|
|
└── reporting/
|
|
```
|
|
|
|
- Run locally only; no CI integration
|
|
- `__main__.py` selects strategies and combines their reports; each strategy also runs independently
|
|
- `e2e_parity/` compares SDK objects, exceptions, callbacks, and streams, or gateway HTTP responses
|
|
- `trace_parity/` compares mapped operations, call counts, and required execution ordering
|
|
- E2E and trace runners share orchestration across `sdk/` and `gateway/`; surface-specific execution lives in those folders
|
|
- `unit_tests/runner.py` combines mapping validation, Python test runs, and native Rust test runs
|
|
- `mapping_validator.py` matches Python/Rust tests by agreed names or annotations and reports missing or ambiguous counterparts
|
|
- `python_runner.py` runs existing Python tests with Rust disabled and enabled in separate processes, verifies backend selection, and compares results
|
|
- `rust_runner.py` runs Cargo tests; native Rust unit tests stay beside their implementation
|
|
- `shared/` contains reusable parity, tracing, and reporting machinery
|
|
- Keep fixtures with their owning API and existing Python tests in their current locations
|