From c0672d16a9850b97eb4b2d8ffc38dc2c6d147d78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Petrovick=C3=BD?= Date: Tue, 10 Jun 2025 09:03:07 +0200 Subject: [PATCH 1/2] chore: fix JUnit warnings on abstract test methods --- .../AbstractConstraintCollectorsTest.java | 37 ------------------- .../AbstractCompositeTerminationTest.java | 8 ---- 2 files changed, 45 deletions(-) diff --git a/core/src/test/java/ai/timefold/solver/core/impl/score/stream/collector/AbstractConstraintCollectorsTest.java b/core/src/test/java/ai/timefold/solver/core/impl/score/stream/collector/AbstractConstraintCollectorsTest.java index 535efdeb387..1e77c6975dc 100644 --- a/core/src/test/java/ai/timefold/solver/core/impl/score/stream/collector/AbstractConstraintCollectorsTest.java +++ b/core/src/test/java/ai/timefold/solver/core/impl/score/stream/collector/AbstractConstraintCollectorsTest.java @@ -8,116 +8,79 @@ import ai.timefold.solver.core.impl.score.stream.collector.connected_ranges.ConnectedRangeTracker; import ai.timefold.solver.core.impl.score.stream.collector.consecutive.ConsecutiveSetTree; -import org.junit.jupiter.api.Test; - /** * Prescribes tests that must be implemented for every cardinality of a constraint collector. */ public abstract class AbstractConstraintCollectorsTest { - @Test public abstract void count(); - @Test public abstract void countLong(); - @Test public abstract void countDistinct(); - @Test public abstract void countDistinctLong(); - @Test public abstract void sum(); - @Test public abstract void sumLong(); - @Test public abstract void sumBigDecimal(); - @Test public abstract void sumBigInteger(); - @Test public abstract void sumDuration(); - @Test public abstract void sumPeriod(); - @Test public abstract void minComparable(); - @Test public abstract void minNotComparable(); - @Test public abstract void maxComparable(); - @Test public abstract void maxNotComparable(); - @Test public abstract void average(); - @Test public abstract void averageLong(); - @Test public abstract void averageBigDecimal(); - @Test public abstract void averageBigInteger(); - @Test public abstract void averageDuration(); - @Test public abstract void toSet(); - @Test public abstract void toSortedSet(); - @Test public abstract void toList(); - @Test public abstract void toMap(); - @Test public abstract void toMapMerged(); - @Test public abstract void toSortedMap(); - @Test public abstract void toSortedMapMerged(); - @Test public abstract void conditionally(); - @Test public abstract void compose2(); - @Test public abstract void compose3(); - @Test public abstract void compose4(); - @Test public abstract void toConsecutiveSequences(); - @Test public abstract void consecutiveUsage(); - @Test public abstract void consecutiveUsageDynamic(); - @Test public abstract void loadBalance(); - @Test public abstract void collectAndThen(); protected static SequenceChain buildSequenceChain(Integer... data) { diff --git a/core/src/test/java/ai/timefold/solver/core/impl/solver/termination/AbstractCompositeTerminationTest.java b/core/src/test/java/ai/timefold/solver/core/impl/solver/termination/AbstractCompositeTerminationTest.java index 67e102d3cee..c9b399da220 100644 --- a/core/src/test/java/ai/timefold/solver/core/impl/solver/termination/AbstractCompositeTerminationTest.java +++ b/core/src/test/java/ai/timefold/solver/core/impl/solver/termination/AbstractCompositeTerminationTest.java @@ -4,26 +4,18 @@ import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; -import org.junit.jupiter.api.Test; - abstract class AbstractCompositeTerminationTest { - @Test abstract void solveTermination(); - @Test abstract void phaseTermination(); - @Test abstract void phaseTerminationInapplicable(); - @Test abstract void calculateSolverTimeGradientTest(); - @Test abstract void calculatePhaseTimeGradientTest(); - @Test abstract void calculatePhaseTimeGradientInapplicableTest(); protected static PhaseTermination mockPhaseTermination() { From 5a73dfe110fe492618017971d05fe8f53e3a4adf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Petrovick=C3=BD?= Date: Tue, 10 Jun 2025 09:03:36 +0200 Subject: [PATCH 2/2] chore: don't run solver integration tests in parallel Hopefully makes metric-based tests less flaky. --- .../solver/core/config/solver/EnvironmentModeTest.java | 3 --- .../solver/AllowsUnassignedValuesListVariableSolverTest.java | 3 --- 2 files changed, 6 deletions(-) diff --git a/core/src/test/java/ai/timefold/solver/core/config/solver/EnvironmentModeTest.java b/core/src/test/java/ai/timefold/solver/core/config/solver/EnvironmentModeTest.java index 9441f71dc2f..19922f2b9bd 100644 --- a/core/src/test/java/ai/timefold/solver/core/config/solver/EnvironmentModeTest.java +++ b/core/src/test/java/ai/timefold/solver/core/config/solver/EnvironmentModeTest.java @@ -38,12 +38,9 @@ import ai.timefold.solver.core.testutil.PlannerTestUtils; import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.parallel.Execution; -import org.junit.jupiter.api.parallel.ExecutionMode; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; -@Execution(ExecutionMode.CONCURRENT) class EnvironmentModeTest { private static final int NUMBER_OF_RANDOM_NUMBERS_GENERATED = 1000; diff --git a/core/src/test/java/ai/timefold/solver/core/impl/solver/AllowsUnassignedValuesListVariableSolverTest.java b/core/src/test/java/ai/timefold/solver/core/impl/solver/AllowsUnassignedValuesListVariableSolverTest.java index 31acf3d6dce..15082c5ae07 100644 --- a/core/src/test/java/ai/timefold/solver/core/impl/solver/AllowsUnassignedValuesListVariableSolverTest.java +++ b/core/src/test/java/ai/timefold/solver/core/impl/solver/AllowsUnassignedValuesListVariableSolverTest.java @@ -23,12 +23,9 @@ import ai.timefold.solver.core.testdomain.list.unassignedvar.TestdataAllowsUnassignedValuesListValue; import org.assertj.core.api.Assertions; -import org.junit.jupiter.api.parallel.Execution; -import org.junit.jupiter.api.parallel.ExecutionMode; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; -@Execution(ExecutionMode.CONCURRENT) class AllowsUnassignedValuesListVariableSolverTest { @ParameterizedTest