proper-testing / proper

PropEr: a QuickCheck-inspired property-based testing tool for Erlang
http://proper-testing.github.io
GNU General Public License v3.0
880 stars 168 forks source link

Be more selective before shrinking clean instances #273

Closed xspirus closed 3 years ago

xspirus commented 3 years ago

This PR fixes an issue with TPBT, especially stateful TPBT, where there could be cases of the shrinker not exactly matching the instance to be shrunk. Now, the instance is cleaned similarly to how the shrinker is selected.

codecov-commenter commented 3 years ago

Codecov Report

Merging #273 (63c9ac6) into master (c6adaaa) will decrease coverage by 0.12%. The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #273      +/-   ##
==========================================
- Coverage   85.37%   85.25%   -0.13%     
==========================================
  Files          14       14              
  Lines        4589     4592       +3     
==========================================
- Hits         3918     3915       -3     
- Misses        671      677       +6     
Impacted Files Coverage Δ
src/proper.erl 70.60% <100.00%> (-0.02%) :arrow_down:
src/proper_statem.erl 94.67% <0.00%> (-0.39%) :arrow_down:
src/proper_erlang_abstract_code.erl 93.90% <0.00%> (-0.34%) :arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update c6adaaa...63c9ac6. Read the comment docs.