rsonpath-syntax-proptest 0.4.0

Test utilities for JSONPath.
Documentation

rsonpath-syntax-proptestproptest::Arbitrary implementation for rsonpath-syntax

Rust docs.rs

Crates.io

License

Utilities for property testing with types in rsonpath-syntax.

The crate exposes two types, ArbitraryJsonPathQuery and ArbitraryJsonPathQueryParam. The ArbitraryJsonPathQuery implements proptest::Arbitrary which generates an arbitrary JSONPath query string representation and rsonpath_syntax::JsonPathQuery object.

Usage

This is mostly used for internal testing of rsonpath-lib and rsonpath-syntax, but it is in general useful for property-testing or fuzzing code that relies on JSONPath queries as input.

Example usage with proptest:

use proptest::prelude::*;
use rsonpath_syntax_proptest::ArbitraryJsonPathQuery;

proptest! {
    #[test]
    fn example(ArbitraryJsonPathQuery { parsed, string } in prop::arbitrary::any::<ArbitraryJsonPathQuery>()) {
        // Your test using parsed (JsonPathQuery) and/or string (String).
    }
}