hedl-test 1.0.0

Shared test fixtures and utilities for HEDL format converters
Documentation

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