Skip to content

fuzz: property test for resolve on valid witnesses #377

Description

@LesterEvSe

Project

tests

Describe the feature

Context: This property test is relevant following the changes introduced in #371 (already merged).

Positive property
For every (Type, Witness) pair where Witness structurally matches Type,
resolve(witness, type) returns Ok, and the resolved value's type equals
Type.

Oracle: assert!(result.is_ok()) and assert_eq!(result.unwrap().ty(), ty).

Input generator
Custom generator, not #[derive(Arbitrary)]. A uniformly random Witness
against a uniformly random Type almost never matches, so libFuzzer would
spend its budget on trivially rejected inputs. Instead: generate a random
Type.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions