Expand description
Shared test fixtures and utilities for HEDL format converters.
This crate provides canonical test documents, builders, error fixtures, and utilities to eliminate test code duplication across all HEDL format converters (JSON, XML, YAML, CSV, Neo4j, Parquet, etc.).
§Features
- Pre-built Fixtures: Comprehensive test documents covering all HEDL features
- Builder Pattern: Fluent API for creating customized test data
- Error Fixtures: Invalid documents and error cases for testing error handling
- Utilities: Expression helpers, counting functions, and more
§Quick Start
use hedl_test::fixtures;
// Use pre-built fixtures
let doc = fixtures::scalars(); // All scalar types
let doc = fixtures::user_list(); // MatrixList with users
let doc = fixtures::with_references(); // Cross-references
let doc = fixtures::comprehensive(); // Everything together
// Build custom fixtures
use hedl_test::fixtures::builders::{DocumentBuilder, ValueBuilder};
let doc = DocumentBuilder::new()
.scalar("name", ValueBuilder::string("Alice"))
.scalar("age", ValueBuilder::int(30))
.build();
// Test error handling
use hedl_test::fixtures::errors;
for (name, invalid) in errors::invalid_hedl_samples() {
// Test parser with invalid input
}
// Use utilities
use hedl_test::{expr, count_nodes};
let e = expr("now()"); // Create expression
let n = count_nodes(&doc); // Count nodes in document§See Also
- Fixtures Guide - Comprehensive usage guide
- Module documentation for detailed API information
Re-exports§
pub use counts::count_nodes;pub use counts::count_references;pub use expression_parsing::expr;pub use expression_parsing::expr_value;pub use expression_parsing::try_expr;pub use expression_parsing::try_expr_value;pub use expression_parsing::ExprError;pub use fixtures::*;
Modules§
- counts
- Fixture counting utilities. Fixture counting utilities.
- expression_
parsing - Expression parsing utilities for tests. Expression utility functions.
- fixtures
- Canonical test fixtures covering all HEDL features. Canonical test fixtures covering all HEDL features.
Functions§
- fixtures_
as_ hedl - Returns all fixtures as (name,
hedl_text) pairs.
Type Aliases§
- Fixture
List - Type alias for a list of fixture functions (name, generator).