में परिणाम यह उदाहरण सिकोड़ें जो forAll
विधि में भेजा जाता है जब छोटे जवाबी उदाहरण के लिए खोज जनरेटर का उपयोग नहीं कर रहा है की तरह लग रहा है।
property("Test") = Prop.forAllNoShrink(Gen.choose(1, 10)) (n => n >= 0 && n < 10)
तो यह ठीक से साथ विफल करना चाहिए:: करने के लिए आप अपनी संपत्ति को बदलते हैं तो
property("Test") = Prop.forAll(Gen.choose(1, 10)) { n =>
Prop.collect(n) { n >= 0 && n < 10 }
}
: हटना मूल्यों कल्पना करने के लिए
[info] ! Algorithm.Test: Falsified after 7 passed tests.
[info] > ARG_0: 10
[error] Failed: : Total 1, Failed 1, Errors 0, Passed 0, Skipped 0
एक तरह से Prop.collect
विधि का उपयोग करने के लिए है एकत्रित मान इस तरह दिखते हैं:
[info] ! Algorithm.Test: Falsified after 40 passed tests.
[info] > ARG_0: -1
[info] > Collected test data:
[info] 17% 3
[info] 17% 1
[info] 15% 6
[info] 12% 9
[info] 10% 2
[info] 10% 5
[info] 7% 4
[info] 7% 8
[info] 2% -1
[info] 2% 7
जहां आप देख सकते हैं कि -1 को सिकुड़ने की प्रक्रिया के दौरान उपयोग किया गया है।
इस मुद्दे को अब 'ऐसी थॉट' पोस्टकंडिशन के उपयोग के माध्यम से (अंतर्निर्मित जेनरेटर के लिए) तय किया गया है - https://github.com/rickynils/scalacheck/issues/8 – DNA