blob: d0e5df415e036e36d90a9b70e001b9db90488782 [file] [log] [blame] [view]
# Validator architecture
Validator applies automated interactive tests to a stateful library such as
Inspect or file systems - an interactive golden file framework.
The Validator architecture includes:
* A set of tests to validate functionality.
* A FIDL protocol to invoke operations to be tested.
* One or more puppet programs which receive FIDL commands and invoke library
* A reference implementation or simulation of the desired behavior.
* Analysis of puppet results, comparison to local results, and reporting.
## Inspect validator
The Inspect Validator implementation includes:
* [Core Validator program](/src/diagnostics/validator/inspect/src)
* [Tests](/src/diagnostics/validator/inspect/src/
* [FIDL](/src/diagnostics/validator/inspect/fidl/validate.test.fidl)
* [Reading the puppet's output](/src/diagnostics/validator/inspect/src/data/
* [Reference Behavior and comparison](/src/diagnostics/validator/inspect/src/
* [Analysis](/src/diagnostics/validator/inspect/src/
and [more analysis](/src/diagnostics/validator/inspect/src/
* [Reporting](/src/diagnostics/validator/inspect/src/
* [Rust Puppet](/src/diagnostics/validator/inspect/lib/rust/src/
See also [Inspect Validator Puppet Architecture](
* [Dart Puppet](