This project uses advanced testing techniques to ensure robustness, security, and maintainability. All core operations are covered by fuzz, property-based, mutation-like (via fast-check), and security tests. Performance benchmarks are also integrated.
- Fuzz Testing: Randomized and edge-case input for all core operations (serialization, deserialization, traversal).
- Property-Based Testing: Roundtrip and edge-case validation for document model and formats.
- Security Testing: Malicious and malformed input (XSS, script tags, dangerous links/images) for all formats.
- Mutation-like Testing: Mutation and edge-case tests are implemented using fast-check property-based testing, which simulates mutation scenarios and validates robustness.
- Performance Benchmarks: Test execution time is measured and documented to ensure CI remains fast.
- 100% test coverage for all core operations and edge cases.
- All security tests pass; no sensitive data exposed.
- Performance benchmarks are tracked in CI logs.
- See
tests/core/formats/*.test.tsandtests/core/document.test.tsfor fuzz, property-based, and security tests.
- All tests run automatically in CI, including mutation and performance benchmarks.
- Coverage reports and performance benchmarks are published for each build.
Mutation and edge-case tests are performed using fast-check property-based testing. These tests simulate random and mutated input to ensure the engine is robust against unexpected scenarios. All bugs found are documented and reproducible.
Test execution time is measured and reported in CI logs. Benchmarks ensure the test suite does not block development workflows.