From 4d432513e0f266d93db316da1b164b2a3214d448 Mon Sep 17 00:00:00 2001 From: KtorZ Date: Mon, 4 Mar 2024 23:28:45 +0100 Subject: [PATCH] Fix interesting case identification for properties expected to fail. --- crates/aiken-project/src/test_framework.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/crates/aiken-project/src/test_framework.rs b/crates/aiken-project/src/test_framework.rs index d16b5643..1613b965 100644 --- a/crates/aiken-project/src/test_framework.rs +++ b/crates/aiken-project/src/test_framework.rs @@ -485,9 +485,13 @@ impl<'a> Counterexample<'a> { Some((_, value)) => { let result = self.property.eval(&value); + let is_failure = result.failed(self.property.can_error); + + let expect_failure = self.property.can_error; + // If the test no longer fails, it isn't better as we're only // interested in counterexamples. - if !result.failed(self.property.can_error) { + if (expect_failure && is_failure) || (!expect_failure && !is_failure) { return false; }