dev-fixtures 0.1.0

Repeatable test environments, sample data, and controlled inputs. Part of the dev-* verification suite.
Documentation

What it does

Builds disposable, deterministic test environments. The most common primitive is TempProject, which lets you stage a project tree, run your test against it, and have the directory cleaned up on drop.

Quick start

[dependencies]
dev-fixtures = "0.1"
use dev_fixtures::TempProject;

let project = TempProject::new()
    .with_file("Cargo.toml", "[package]\nname = \"sample\"\n")
    .with_file("src/lib.rs", "pub fn answer() -> u32 { 42 }")
    .build()
    .unwrap();

// project.path() points at a temp directory.
// It is deleted automatically when `project` is dropped.

What's planned

  • File-tree builders with golden-file comparison helpers.
  • Adversarial input generators (oversized, malformed, permission-denied).
  • Mock data primitives (CSV, JSON, plain bytes).
  • Reset / reseed hooks for stateful fixtures.
  • Integration with dev-report for fixture-setup verdicts.

The dev-* suite

dev-fixtures is one of the producer crates in the dev-* verification suite. See dev-tools for the umbrella crate.

License

Apache-2.0. See LICENSE.