forge::fuzz

Module strategies

Source

Structs§

  • A set of arbitrary 32 byte data from the VM used to generate values for the strategy.
  • Value tree for signed ints (up to int256). The strategy combines 3 different strategies, each assigned a specific weight:
  • Value tree for unsigned ints (up to uint256). The strategy combines 3 different strategies, each assigned a specific weight:

Functions§

  • Given a function, it returns a strategy which generates valid calldata for that function’s input types, following declared test fixtures.
  • Given a function and some state, it returns a strategy which generated valid calldata for the given function’s input types, based on state taken from the EVM.
  • Given a function, it returns a proptest strategy which generates valid abi-encoded calldata for that function’s input types.
  • Given a parameter type, returns a strategy for generating values for that type.
  • Given a parameter type, returns a strategy for generating values for that type, given some EVM fuzz state.
  • Given a parameter type and configured fixtures for param name, returns a strategy for generating values for that type.
  • Creates the invariant strategy.
  • Given a target address, we generate random calldata.