Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Property-based testing #229

Open
25 of 26 tasks
treiher opened this issue May 11, 2020 · 1 comment
Open
25 of 26 tasks

Property-based testing #229

treiher opened this issue May 11, 2020 · 1 comment
Labels

Comments

@treiher
Copy link
Collaborator

treiher commented May 11, 2020

Basis: Hypothesis

Property-Based Test for Model Parser

  • Generate model
  • Convert to specification
  • Parse specification
  • Compare models

To be tested entities:

  • ModularInteger
  • RangeInteger
  • Enumeration
  • Message
  • Refinement

Property-Based Test for Expression Parser

  • Generate expression
  • Convert to specification
  • Parse specification
  • Compare expressions

To be tested entities:

  • TRUE
  • FALSE
  • And
  • Or
  • Add
  • Mul
  • Sub
  • Div
  • Number
  • Variable
  • Length
  • First
  • Last
  • Aggregate
  • Less
  • LessEqual
  • Equal
  • GreaterEqual
  • Greater
  • NotEqual

Property-Based Test for SPARK Code Generator

  • Generate model
  • Generate SPARK code
  • Compile generated code
  • Prove generated code

Property-Based Test for Expression Conversion (RecordFlux ⇿ Ada)

  • Complete tested expressions

Found Issues

#298, #305, #309, #310, #311, #312, #313, #314, #315, #316, #317, #319, #320

@treiher treiher self-assigned this Jun 17, 2020
treiher added a commit that referenced this issue Jul 24, 2020
treiher added a commit that referenced this issue Jul 24, 2020
treiher added a commit that referenced this issue Jul 24, 2020
treiher added a commit that referenced this issue Jul 24, 2020
treiher added a commit that referenced this issue Jul 27, 2020
treiher added a commit that referenced this issue Jul 27, 2020
treiher added a commit that referenced this issue Jul 27, 2020
treiher added a commit that referenced this issue Jul 27, 2020
@treiher treiher removed their assignment Jul 27, 2020
@treiher
Copy link
Collaborator Author

treiher commented Jan 22, 2021

It is now possible to integrate icontract with Hypothesis: icontract-hypothesis. The most interesting part is the automatic inference of Hypothesis strategies based on contracts, i.e. test cases for a function can be generated automatically based on its preconditions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant