INNER CODE UNIT · Rust

schema_matches_config

stjude-rust-labs/sprocket · crates/sprocket-test-types/src/lib.rs:333

    fn schema_matches_config() {
        let config_str = std::fs::read_to_string(full_test_path()).unwrap();

        let schema = serde_yaml_ng::from_str::<Value>(&json_schema()).unwrap();
        let config = serde_yaml_ng::from_str::<Value>(&config_str).unwrap();

        let mut failed = false;
        let validator = jsonschema::draft202012::new(&schema).unwrap();
        for error in validator.iter_errors(&config) {
            failed = true;
            eprintln!("{error}");
        }
        assert!(
            !failed,
            "the generated schema does not match the current `TestDefinition` spec!"
        );
    }
}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…