From 966a20f691dbf557c4a931d36f2a419ce0bc1331 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Mon, 4 Mar 2024 23:41:37 +0100 Subject: [PATCH] Fix run_n_times for properties expected to fail. --- crates/aiken-project/src/test_framework.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crates/aiken-project/src/test_framework.rs b/crates/aiken-project/src/test_framework.rs index 1613b965..d4bc108c 100644 --- a/crates/aiken-project/src/test_framework.rs +++ b/crates/aiken-project/src/test_framework.rs @@ -258,7 +258,10 @@ impl PropertyTest { .sample(&self.fuzzer.program) .expect("running seeded Prng cannot fail."); - if self.eval(&value).failed(self.can_error) { + // NOTE: We do NOT pass self.can_error here, because when searching for + // failing properties, we do want to _keep running_ until we find a + // a failing case. It may not occur on the first run. + if self.eval(&value).failed(false) { let mut counterexample = Counterexample { value, choices: next_prng.choices(),