From fab78a09376fec377464a8632e233007f59e45ff Mon Sep 17 00:00:00 2001 From: arcuri82 Date: Wed, 22 May 2024 14:38:37 +0200 Subject: [PATCH] fixed non-determinism --- .../org/evomaster/core/search/service/Randomness.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/core/src/main/kotlin/org/evomaster/core/search/service/Randomness.kt b/core/src/main/kotlin/org/evomaster/core/search/service/Randomness.kt index 4e29adb812..a597a401fc 100644 --- a/core/src/main/kotlin/org/evomaster/core/search/service/Randomness.kt +++ b/core/src/main/kotlin/org/evomaster/core/search/service/Randomness.kt @@ -412,7 +412,10 @@ class Randomness { val k = selection.subList(0, n) - if(log.isTraceEnabled) log.trace("Chosen: {}", k.joinToString(" ")) + //printing actual values here lead to non-deterministic behavior is toString() is non-deterministic, + //which is the typical case for custom objects that do not override it, as output string will have + // a @ reference number to the heap + log.trace("Chosen {} elements from list", n) return k } @@ -431,7 +434,7 @@ class Randomness { val k = selection.subList(0, n).toSet() - if(log.isTraceEnabled) log.trace("Chosen: {}", k.joinToString(" ")) + log.trace("Chosen {} elements from set", n) return k } @@ -457,7 +460,7 @@ class Randomness { } val k = iter.next() - log.trace("Chosen: {}", k) + log.trace("Chosen index: {}", i) return k }