From 1e8b4f4d66c9fb00784872c16646cc25a730b765 Mon Sep 17 00:00:00 2001 From: oblonski Date: Tue, 2 Feb 2016 20:57:26 +0100 Subject: [PATCH] reproduce issue #214 --- .../problem/VehicleRoutingProblemTest.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/jsprit-core/src/test/java/jsprit/core/problem/VehicleRoutingProblemTest.java b/jsprit-core/src/test/java/jsprit/core/problem/VehicleRoutingProblemTest.java index bbe0e1ef..9737f4c9 100644 --- a/jsprit-core/src/test/java/jsprit/core/problem/VehicleRoutingProblemTest.java +++ b/jsprit-core/src/test/java/jsprit/core/problem/VehicleRoutingProblemTest.java @@ -445,6 +445,29 @@ public class VehicleRoutingProblemTest { } + @Test(expected = IllegalStateException.class) + public void whenAddingTwoServicesWithTheSameId_itShouldThrowException() { + Service service1 = Service.Builder.newInstance("myService").setLocation(Location.newInstance("loc")).build(); + Service service2 = Service.Builder.newInstance("myService").setLocation(Location.newInstance("loc")).build(); + VehicleRoutingProblem.Builder vrpBuilder = VehicleRoutingProblem.Builder.newInstance(); + vrpBuilder.addJob(service1); + vrpBuilder.addJob(service2); + @SuppressWarnings("UnusedDeclaration") VehicleRoutingProblem vrp = vrpBuilder.build(); + } + + @Test(expected = IllegalStateException.class) + public void whenAddingTwoShipmentsWithTheSameId_itShouldThrowException() { + Shipment shipment1 = Shipment.Builder.newInstance("shipment").setPickupLocation(Location.Builder.newInstance().setId("pick").build()) + .setDeliveryLocation(Location.newInstance("del")).build(); + Shipment shipment2 = Shipment.Builder.newInstance("shipment").setPickupLocation(Location.Builder.newInstance().setId("pick").build()) + .setDeliveryLocation(Location.newInstance("del")).build(); + VehicleRoutingProblem.Builder vrpBuilder = VehicleRoutingProblem.Builder.newInstance(); + vrpBuilder.addJob(shipment1); + vrpBuilder.addJob(shipment2); + @SuppressWarnings("UnusedDeclaration") VehicleRoutingProblem vrp = vrpBuilder.build(); + + } + @Test public void whenAddingTwoVehicles_theyShouldHaveProperIndices() { VehicleImpl veh1 = VehicleImpl.Builder.newInstance("v1").setStartLocation(TestUtils.loc("start", Coordinate.newInstance(0, 1)))