xinvoice/test/README.md

35 lines
1.3 KiB
Markdown
Raw Normal View History

2025-04-03 13:26:27 +00:00
# XInvoice Test Suite
This directory contains tests for the XInvoice library.
## Running Tests
Use the test runner to run the test suite:
```bash
tsx test/run-tests.ts
```
## Test Structure
- **PDF Export Tests** (`test.pdf-export.ts`): Test PDF export functionality with embedded XML for different formats.
- Verifies the exported PDF structure contains proper embedded files
- Tests type safety of format parameters
- Confirms invoice items are properly included during export
- Checks format-specific XML structures
- **Circular Encoding/Decoding Tests** (`test.circular-encoding-decoding.ts`): Test the encoding and decoding of invoice data.
- Tests full circular process: original → XML → import → export → reimport
- Verifies data preservation through multiple conversions
- Tests special character handling
- Tests variations in invoice content (different items, etc.)
## Test Data
The test suite uses sample data files from:
- `test/assets/getasset.ts`: Utility for loading test assets
- `test/assets/letter`: Sample invoice data
## Known Issues
The circular validation tests (`test.circular-validation.ts`) currently have type compatibility issues and are not included in the automated test run. These will be addressed in a future update.