From 3bf977784ea95418fa51415fcac68655cf848015 Mon Sep 17 00:00:00 2001 From: Stefan Schroeder <4sschroeder@gmail.com> Date: Tue, 3 Dec 2013 15:18:21 +0100 Subject: [PATCH] add test for ConstraintManager --- .../constraint/TestConstraintManager.java | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/jsprit-core/src/test/java/jsprit/core/problem/constraint/TestConstraintManager.java b/jsprit-core/src/test/java/jsprit/core/problem/constraint/TestConstraintManager.java index ad1b7552..58c55f22 100644 --- a/jsprit-core/src/test/java/jsprit/core/problem/constraint/TestConstraintManager.java +++ b/jsprit-core/src/test/java/jsprit/core/problem/constraint/TestConstraintManager.java @@ -1,14 +1,34 @@ package jsprit.core.problem.constraint; import static org.junit.Assert.*; +import static org.mockito.Mockito.mock; + +import java.util.ArrayList; +import java.util.List; + +import jsprit.core.problem.VehicleRoutingProblem; +import jsprit.core.problem.solution.route.state.RouteAndActivityStateGetter; import org.junit.Test; public class TestConstraintManager { @Test - public void testIt(){ - assertFalse(true); + public void whenGettingConstraintsViaConstructor_theyShouldBeResolvedCorrectly(){ + List constraints = new ArrayList(); + constraints.add(new ServiceDeliveriesFirstConstraint()); + constraints.add(mock(HardRouteStateLevelConstraint.class)); + ConstraintManager cManager = new ConstraintManager(mock(VehicleRoutingProblem.class),mock(RouteAndActivityStateGetter.class),constraints); + assertEquals(2,cManager.getConstraints().size()); + } + + @Test + public void whenGettingConstraintsViaConstructorAndAtLeastOneConstraintCannotBeResolved_itShouldOnlyAddTheKnownConstraints(){ + List constraints = new ArrayList(); + constraints.add(new ServiceDeliveriesFirstConstraint()); + constraints.add(mock(Constraint.class)); + ConstraintManager cManager = new ConstraintManager(mock(VehicleRoutingProblem.class),mock(RouteAndActivityStateGetter.class),constraints); + assertEquals(1,cManager.getConstraints().size()); } }