mirror of
https://github.com/graphhopper/jsprit.git
synced 2020-01-24 07:45:05 +01:00
added multiple cap-dims to activity and corresponding tests
This commit is contained in:
parent
21e4bb09f5
commit
237075c463
18 changed files with 512 additions and 45 deletions
|
|
@ -7,6 +7,8 @@ public final class DeliverService implements DeliveryActivity{
|
|||
|
||||
private Delivery delivery;
|
||||
|
||||
private Capacity capacity;
|
||||
|
||||
private double arrTime;
|
||||
|
||||
private double endTime;
|
||||
|
|
@ -14,14 +16,20 @@ public final class DeliverService implements DeliveryActivity{
|
|||
public DeliverService(Delivery delivery) {
|
||||
super();
|
||||
this.delivery = delivery;
|
||||
capacity = Capacity.invert(delivery.getCapacity());
|
||||
}
|
||||
|
||||
private DeliverService(DeliverService deliveryActivity){
|
||||
this.delivery=deliveryActivity.getJob();
|
||||
this.arrTime=deliveryActivity.getArrTime();
|
||||
this.endTime=deliveryActivity.getEndTime();
|
||||
capacity = deliveryActivity.getCapacity();
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated use <code>getCapacity()</code> instead
|
||||
*/
|
||||
@Deprecated
|
||||
@Override
|
||||
public int getCapacityDemand() {
|
||||
return delivery.getCapacityDemand()*-1;
|
||||
|
|
@ -89,6 +97,6 @@ public final class DeliverService implements DeliveryActivity{
|
|||
|
||||
@Override
|
||||
public Capacity getCapacity() {
|
||||
return null;
|
||||
return capacity;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,18 +7,24 @@ import jsprit.core.problem.job.Shipment;
|
|||
public final class DeliverShipment implements DeliveryActivity{
|
||||
|
||||
private Shipment shipment;
|
||||
|
||||
private double endTime;
|
||||
|
||||
private double arrTime;
|
||||
|
||||
private Capacity capacity;
|
||||
|
||||
public DeliverShipment(Shipment shipment) {
|
||||
super();
|
||||
this.shipment = shipment;
|
||||
this.capacity = Capacity.invert(shipment.getCapacity());
|
||||
}
|
||||
|
||||
public DeliverShipment(DeliverShipment deliveryShipmentActivity) {
|
||||
this.shipment = (Shipment) deliveryShipmentActivity.getJob();
|
||||
this.arrTime = deliveryShipmentActivity.getArrTime();
|
||||
this.endTime = deliveryShipmentActivity.getEndTime();
|
||||
this.capacity = deliveryShipmentActivity.getCapacity();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -26,6 +32,10 @@ public final class DeliverShipment implements DeliveryActivity{
|
|||
return shipment;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated use <code>getCapacity()</code> instead
|
||||
*/
|
||||
@Deprecated
|
||||
@Override
|
||||
public int getCapacityDemand() {
|
||||
return shipment.getCapacityDemand()*-1;
|
||||
|
|
@ -88,6 +98,6 @@ public final class DeliverShipment implements DeliveryActivity{
|
|||
|
||||
@Override
|
||||
public Capacity getCapacity() {
|
||||
return null;
|
||||
return capacity;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -82,7 +82,12 @@ public final class PickupService implements PickupActivity{
|
|||
return pickup;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated use <code>getCapacity()</code> instead
|
||||
*
|
||||
*/
|
||||
@Override
|
||||
@Deprecated
|
||||
public int getCapacityDemand() {
|
||||
return pickup.getCapacityDemand();
|
||||
}
|
||||
|
|
@ -94,8 +99,7 @@ public final class PickupService implements PickupActivity{
|
|||
|
||||
@Override
|
||||
public Capacity getCapacity() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
return pickup.getCapacity();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,6 +28,10 @@ public final class PickupShipment implements PickupActivity{
|
|||
return shipment;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated use <code>getCapacity()</code> instead
|
||||
*/
|
||||
@Deprecated
|
||||
@Override
|
||||
public int getCapacityDemand() {
|
||||
return shipment.getCapacityDemand();
|
||||
|
|
|
|||
|
|
@ -28,8 +28,6 @@ public class ServiceActivity implements JobActivity{
|
|||
|
||||
public double endTime;
|
||||
|
||||
public int capacityDemand;
|
||||
|
||||
/**
|
||||
* @return the arrTime
|
||||
*/
|
||||
|
|
@ -66,23 +64,12 @@ public class ServiceActivity implements JobActivity{
|
|||
return new ServiceActivity(service);
|
||||
}
|
||||
|
||||
/**
|
||||
* creates a new instance of {@link ServiceActivity} with a flag that indicates whether smthing is unloaded or loaded.
|
||||
*
|
||||
* @param service
|
||||
* @param capacityDemand
|
||||
* @return
|
||||
*/
|
||||
// public static ServiceActivity newInstance(Service service, boolean isPickup){
|
||||
// return new ServiceActivity(service, capacityDemand);
|
||||
// }
|
||||
|
||||
private final Service service;
|
||||
|
||||
protected ServiceActivity(Service service) {
|
||||
counter++;
|
||||
this.service = service;
|
||||
this.capacityDemand = service.getCapacityDemand();
|
||||
}
|
||||
|
||||
protected ServiceActivity(ServiceActivity serviceActivity) {
|
||||
|
|
@ -90,7 +77,6 @@ public class ServiceActivity implements JobActivity{
|
|||
this.service = serviceActivity.getJob();
|
||||
this.arrTime = serviceActivity.getArrTime();
|
||||
this.endTime = serviceActivity.getEndTime();
|
||||
this.capacityDemand = serviceActivity.getCapacityDemand();
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -133,9 +119,13 @@ public class ServiceActivity implements JobActivity{
|
|||
return service.getTimeWindow().getEnd();
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated use <code>getCapacity()</code> instead
|
||||
*/
|
||||
@Override
|
||||
@Deprecated
|
||||
public int getCapacityDemand() {
|
||||
return this.capacityDemand;
|
||||
return service.getCapacityDemand();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -170,8 +160,7 @@ public class ServiceActivity implements JobActivity{
|
|||
|
||||
@Override
|
||||
public Capacity getCapacity() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
return service.getCapacity();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import static org.mockito.Mockito.mock;
|
|||
import static org.mockito.Mockito.when;
|
||||
import jsprit.core.algorithm.recreate.listener.InsertionListeners;
|
||||
import jsprit.core.algorithm.state.UpdateEndLocationIfRouteIsOpen;
|
||||
import jsprit.core.problem.Capacity;
|
||||
import jsprit.core.problem.driver.Driver;
|
||||
import jsprit.core.problem.job.Service;
|
||||
import jsprit.core.problem.job.Shipment;
|
||||
|
|
@ -73,6 +74,8 @@ public class TestInserter {
|
|||
@Test
|
||||
public void whenInsertingShipmentAndRouteIsClosed_itInsertsCorrectly(){
|
||||
Shipment shipment = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(shipment.getCapacity()).thenReturn(capacity);
|
||||
Vehicle vehicle = mock(Vehicle.class);
|
||||
when(vehicle.getStartLocationId()).thenReturn("vehLoc");
|
||||
when(vehicle.getEndLocationId()).thenReturn("vehLoc");
|
||||
|
|
@ -82,6 +85,7 @@ public class TestInserter {
|
|||
VehicleRoute route = VehicleRoute.Builder.newInstance(vehicle, mock(Driver.class)).addPickup(shipment).addDelivery(shipment).build();
|
||||
//start - pick(shipment) - del(shipment) - end
|
||||
Shipment shipmentToInsert = mock(Shipment.class);
|
||||
when(shipmentToInsert.getCapacity()).thenReturn(capacity);
|
||||
when(shipmentToInsert.getDeliveryLocation()).thenReturn("delLoc");
|
||||
when(shipmentToInsert.getPickupLocation()).thenReturn("pickLoc");
|
||||
InsertionData iData = mock(InsertionData.class);
|
||||
|
|
@ -101,6 +105,8 @@ public class TestInserter {
|
|||
@Test
|
||||
public void whenInsertingShipmentAndRouteIsOpen_itInsertsCorrectlyAndSwitchesEndLocation(){
|
||||
Shipment shipment = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(shipment.getCapacity()).thenReturn(capacity);
|
||||
Vehicle vehicle = mock(Vehicle.class);
|
||||
when(vehicle.isReturnToDepot()).thenReturn(false);
|
||||
when(vehicle.getId()).thenReturn("vehId");
|
||||
|
|
@ -108,6 +114,7 @@ public class TestInserter {
|
|||
VehicleRoute route = VehicleRoute.Builder.newInstance(vehicle, mock(Driver.class)).addPickup(shipment).addDelivery(shipment).build();
|
||||
//start - pick(shipment) - del(shipment) - end
|
||||
Shipment shipmentToInsert = mock(Shipment.class);
|
||||
when(shipmentToInsert.getCapacity()).thenReturn(capacity);
|
||||
when(shipmentToInsert.getDeliveryLocation()).thenReturn("delLoc");
|
||||
when(shipmentToInsert.getPickupLocation()).thenReturn("pickLoc");
|
||||
InsertionData iData = mock(InsertionData.class);
|
||||
|
|
@ -127,12 +134,15 @@ public class TestInserter {
|
|||
@Test
|
||||
public void whenSwitchingVehicleAndRouteIsClosed_newStartAndEndShouldBeTheLocationOfNewVehicle(){
|
||||
Shipment shipment = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(shipment.getCapacity()).thenReturn(capacity);
|
||||
Vehicle vehicle = VehicleImpl.Builder.newInstance("vehId").setStartLocationId("vehLoc").setType(mock(VehicleType.class)).build();
|
||||
Vehicle newVehicle = VehicleImpl.Builder.newInstance("newVehId").setStartLocationId("newVehLoc").setType(mock(VehicleType.class)).build();
|
||||
|
||||
VehicleRoute route = VehicleRoute.Builder.newInstance(vehicle, mock(Driver.class)).addPickup(shipment).addDelivery(shipment).build();
|
||||
//start - pick(shipment) - del(shipment) - end
|
||||
Shipment shipmentToInsert = mock(Shipment.class);
|
||||
when(shipmentToInsert.getCapacity()).thenReturn(capacity);
|
||||
when(shipmentToInsert.getDeliveryLocation()).thenReturn("delLoc");
|
||||
when(shipmentToInsert.getPickupLocation()).thenReturn("pickLoc");
|
||||
|
||||
|
|
@ -150,12 +160,15 @@ public class TestInserter {
|
|||
@Test
|
||||
public void whenSwitchingVehicleAndRouteIsOpen_endLocationShouldBeTheLocationOfTheLastActivity(){
|
||||
Shipment shipment = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(shipment.getCapacity()).thenReturn(capacity);
|
||||
Vehicle vehicle = VehicleImpl.Builder.newInstance("vehId").setReturnToDepot(false).setStartLocationId("vehLoc").setType(mock(VehicleType.class)).build();
|
||||
Vehicle newVehicle = VehicleImpl.Builder.newInstance("newVehId").setReturnToDepot(false).setStartLocationId("newVehLoc").setType(mock(VehicleType.class)).build();
|
||||
|
||||
VehicleRoute route = VehicleRoute.Builder.newInstance(vehicle, mock(Driver.class)).addPickup(shipment).addDelivery(shipment).build();
|
||||
//start - pick(shipment) - del(shipment) - end
|
||||
Shipment shipmentToInsert = mock(Shipment.class);
|
||||
when(shipmentToInsert.getCapacity()).thenReturn(capacity);
|
||||
when(shipmentToInsert.getDeliveryLocation()).thenReturn("delLoc");
|
||||
when(shipmentToInsert.getPickupLocation()).thenReturn("pickLoc");
|
||||
|
||||
|
|
@ -173,6 +186,8 @@ public class TestInserter {
|
|||
@Test
|
||||
public void whenInsertingShipmentAtBeginningAndSwitchingVehicleAndRouteIsOpen_endLocationShouldBeTheLocationOfTheLastActivity(){
|
||||
Shipment shipment = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(shipment.getCapacity()).thenReturn(capacity);
|
||||
when(shipment.getDeliveryLocation()).thenReturn("oldShipmentDelLoc");
|
||||
Vehicle vehicle = VehicleImpl.Builder.newInstance("vehId").setReturnToDepot(false).setStartLocationId("vehLoc").setType(mock(VehicleType.class)).build();
|
||||
Vehicle newVehicle = VehicleImpl.Builder.newInstance("newVehId").setReturnToDepot(false).setStartLocationId("newVehLoc").setType(mock(VehicleType.class)).build();
|
||||
|
|
@ -180,6 +195,7 @@ public class TestInserter {
|
|||
VehicleRoute route = VehicleRoute.Builder.newInstance(vehicle, mock(Driver.class)).addPickup(shipment).addDelivery(shipment).build();
|
||||
//start - pick(shipment) - del(shipment) - end
|
||||
Shipment shipmentToInsert = mock(Shipment.class);
|
||||
when(shipmentToInsert.getCapacity()).thenReturn(capacity);
|
||||
when(shipmentToInsert.getDeliveryLocation()).thenReturn("delLoc");
|
||||
when(shipmentToInsert.getPickupLocation()).thenReturn("pickLoc");
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import static org.junit.Assert.assertEquals;
|
|||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
import jsprit.core.algorithm.state.StateManager;
|
||||
import jsprit.core.problem.Capacity;
|
||||
import jsprit.core.problem.VehicleRoutingProblem;
|
||||
import jsprit.core.problem.constraint.PickupAndDeliverShipmentLoadActivityLevelConstraint;
|
||||
import jsprit.core.problem.constraint.HardActivityStateLevelConstraint.ConstraintsStatus;
|
||||
|
|
@ -39,6 +40,8 @@ public class HardPickupAndDeliveryShipmentActivityConstraintTest {
|
|||
stateManager = new StateManager(mock(VehicleRoutingProblem.class));
|
||||
shipment = mock(Shipment.class);
|
||||
when(shipment.getCapacityDemand()).thenReturn(1);
|
||||
Capacity capacity = Capacity.Builder.newInstance().addDimension(0, 1).build();
|
||||
when(shipment.getCapacity()).thenReturn(capacity);
|
||||
iFacts = new JobInsertionContext(null, null, vehicle, null, 0.0);
|
||||
constraint = new PickupAndDeliverShipmentLoadActivityLevelConstraint(stateManager);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -200,7 +200,7 @@ public class ShipmentTest {
|
|||
assertEquals(2.0,s.getDeliveryTimeWindow().getEnd(),0.01);
|
||||
}
|
||||
|
||||
@Test(expected=IllegalStateException.class)
|
||||
@Test(expected=IllegalArgumentException.class)
|
||||
public void whenShipmentHasNegativeCapacityVal_throwIllegalStateExpception(){
|
||||
@SuppressWarnings("unused")
|
||||
Shipment one = Shipment.Builder.newInstance("s").setPickupLocation("foo").setDeliveryLocation("foofoo")
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package jsprit.core.problem.solution.route;
|
|||
import static org.junit.Assert.assertEquals;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.when;
|
||||
import jsprit.core.problem.Capacity;
|
||||
import jsprit.core.problem.driver.Driver;
|
||||
import jsprit.core.problem.job.Shipment;
|
||||
import jsprit.core.problem.vehicle.Vehicle;
|
||||
|
|
@ -30,6 +31,8 @@ public class VehicleRouteBuilderTest {
|
|||
@Test(expected=IllegalStateException.class)
|
||||
public void whenShipmentIsPickedDeliveredAndDeliveredAgain_throwsException(){
|
||||
Shipment s = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(s.getCapacity()).thenReturn(capacity);
|
||||
VehicleRoute.Builder builder = VehicleRoute.Builder.newInstance(mock(Vehicle.class), mock(Driver.class));
|
||||
builder.addPickup(s);
|
||||
builder.addDelivery(s);
|
||||
|
|
@ -39,6 +42,8 @@ public class VehicleRouteBuilderTest {
|
|||
@Test(expected=IllegalStateException.class)
|
||||
public void whenShipmentIsPickedUpThoughButHasNotBeenDeliveredAndRouteIsBuilt_throwsException(){
|
||||
Shipment s = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(s.getCapacity()).thenReturn(capacity);
|
||||
VehicleRoute.Builder builder = VehicleRoute.Builder.newInstance(mock(Vehicle.class), mock(Driver.class));
|
||||
builder.addPickup(s);
|
||||
builder.addPickup(mock(Shipment.class));
|
||||
|
|
@ -50,6 +55,9 @@ public class VehicleRouteBuilderTest {
|
|||
public void whenTwoShipmentsHaveBeenAdded_nuOfActivitiesMustEqualFour(){
|
||||
Shipment s = mock(Shipment.class);
|
||||
Shipment s2 = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(s.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getCapacity()).thenReturn(capacity);
|
||||
VehicleRoute.Builder builder = VehicleRoute.Builder.newInstance(mock(Vehicle.class), mock(Driver.class));
|
||||
builder.addPickup(s);
|
||||
builder.addPickup(s2);
|
||||
|
|
@ -63,6 +71,9 @@ public class VehicleRouteBuilderTest {
|
|||
public void whenBuildingClosedRoute_routeEndShouldHaveLocationOfVehicle(){
|
||||
Shipment s = mock(Shipment.class);
|
||||
Shipment s2 = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(s.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getCapacity()).thenReturn(capacity);
|
||||
Vehicle vehicle = mock(Vehicle.class);
|
||||
when(vehicle.isReturnToDepot()).thenReturn(true);
|
||||
when(vehicle.getStartLocationId()).thenReturn("vehLoc");
|
||||
|
|
@ -80,6 +91,9 @@ public class VehicleRouteBuilderTest {
|
|||
public void whenBuildingOpenRoute_routeEndShouldHaveLocationOfLastActivity(){
|
||||
Shipment s = mock(Shipment.class);
|
||||
Shipment s2 = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(s.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getDeliveryLocation()).thenReturn("delLoc");
|
||||
Vehicle vehicle = mock(Vehicle.class);
|
||||
when(vehicle.isReturnToDepot()).thenReturn(false);
|
||||
|
|
@ -97,6 +111,9 @@ public class VehicleRouteBuilderTest {
|
|||
public void whenSettingDepartureTime(){
|
||||
Shipment s = mock(Shipment.class);
|
||||
Shipment s2 = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(s.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getDeliveryLocation()).thenReturn("delLoc");
|
||||
Vehicle vehicle = mock(Vehicle.class);
|
||||
when(vehicle.isReturnToDepot()).thenReturn(false);
|
||||
|
|
@ -117,6 +134,9 @@ public class VehicleRouteBuilderTest {
|
|||
public void whenSettingEndTime(){
|
||||
Shipment s = mock(Shipment.class);
|
||||
Shipment s2 = mock(Shipment.class);
|
||||
Capacity capacity = Capacity.Builder.newInstance().build();
|
||||
when(s.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getCapacity()).thenReturn(capacity);
|
||||
when(s2.getDeliveryLocation()).thenReturn("delLoc");
|
||||
Vehicle vehicle = mock(Vehicle.class);
|
||||
when(vehicle.isReturnToDepot()).thenReturn(false);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,30 @@
|
|||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import jsprit.core.problem.job.Shipment;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
public class DefaultShipmentActivityFactoryTest {
|
||||
|
||||
@Test
|
||||
public void whenCreatingPickupActivityWithShipment_itShouldReturnPickupShipment(){
|
||||
DefaultShipmentActivityFactory factory = new DefaultShipmentActivityFactory();
|
||||
Shipment shipment = Shipment.Builder.newInstance("s")
|
||||
.setPickupLocation("pLoc").setDeliveryLocation("dLoc").build();
|
||||
TourActivity act = factory.createPickup(shipment);
|
||||
assertNotNull(act);
|
||||
assertTrue(act instanceof PickupShipment);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCreatingDeliverActivityWithShipment_itShouldReturnDeliverShipment(){
|
||||
DefaultShipmentActivityFactory factory = new DefaultShipmentActivityFactory();
|
||||
Shipment shipment = Shipment.Builder.newInstance("s")
|
||||
.setPickupLocation("pLoc").setDeliveryLocation("dLoc").build();
|
||||
TourActivity act = factory.createDelivery(shipment);
|
||||
assertNotNull(act);
|
||||
assertTrue(act instanceof DeliverShipment);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,40 @@
|
|||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import jsprit.core.problem.job.Delivery;
|
||||
import jsprit.core.problem.job.Pickup;
|
||||
import jsprit.core.problem.job.Service;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
public class DefaultTourActivityFactoryTest {
|
||||
|
||||
@Test
|
||||
public void whenCreatingActivityWithService_itShouldReturnPickupService(){
|
||||
DefaultTourActivityFactory factory = new DefaultTourActivityFactory();
|
||||
Service service = Service.Builder.newInstance("service").setLocationId("loc").build();
|
||||
TourActivity act = factory.createActivity(service);
|
||||
assertNotNull(act);
|
||||
assertTrue(act instanceof PickupService);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCreatingActivityWithPickup_itShouldReturnPickupService(){
|
||||
DefaultTourActivityFactory factory = new DefaultTourActivityFactory();
|
||||
Pickup service = (Pickup) Pickup.Builder.newInstance("service").setLocationId("loc").build();
|
||||
TourActivity act = factory.createActivity(service);
|
||||
assertNotNull(act);
|
||||
assertTrue(act instanceof PickupService);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCreatingActivityWithDelivery_itShouldReturnDeliverService(){
|
||||
DefaultTourActivityFactory factory = new DefaultTourActivityFactory();
|
||||
Delivery service = (Delivery) Delivery.Builder.newInstance("service").setLocationId("loc").build();
|
||||
TourActivity act = factory.createActivity(service);
|
||||
assertNotNull(act);
|
||||
assertTrue(act instanceof DeliverService);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
public class DefaultTourActivityTest {
|
||||
|
||||
}
|
||||
|
|
@ -1,5 +1,76 @@
|
|||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import jsprit.core.problem.job.Delivery;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
public class DeliverServiceTest {
|
||||
|
||||
private Delivery service;
|
||||
|
||||
private DeliverService deliver;
|
||||
|
||||
@Before
|
||||
public void doBefore(){
|
||||
service = (Delivery) Delivery.Builder.newInstance("service").setLocationId("loc").
|
||||
setTimeWindow(TimeWindow.newInstance(1., 2.)).
|
||||
addCapacityDimension(0, 10).addCapacityDimension(1, 100).addCapacityDimension(2, 1000).build();
|
||||
deliver = new DeliverService(service);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCallingCapacity_itShouldReturnCorrectCapacity(){
|
||||
assertEquals(-10,deliver.getCapacity().get(0));
|
||||
assertEquals(-100,deliver.getCapacity().get(1));
|
||||
assertEquals(-1000,deliver.getCapacity().get(2));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Test
|
||||
public void whenCallingCapacityDemand_itShouldReturnCapDimWithIndex0(){
|
||||
assertEquals(-10,deliver.getCapacityDemand());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithEarliestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(1.,deliver.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithLatestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(2.,deliver.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingArrTime_itShouldBeSetCorrectly(){
|
||||
deliver.setArrTime(4.0);
|
||||
assertEquals(4.,deliver.getArrTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingEndTime_itShouldBeSetCorrectly(){
|
||||
deliver.setEndTime(5.0);
|
||||
assertEquals(5.,deliver.getEndTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenIniLocationId_itShouldBeSetCorrectly(){
|
||||
assertEquals("loc",deliver.getLocationId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCopyingStart_itShouldBeDoneCorrectly(){
|
||||
DeliverService copy = (DeliverService) deliver.duplicate();
|
||||
assertEquals(1.,copy.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
assertEquals(2.,copy.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
assertEquals("loc",copy.getLocationId());
|
||||
assertEquals(-10,copy.getCapacity().get(0));
|
||||
assertEquals(-100,copy.getCapacity().get(1));
|
||||
assertEquals(-1000,copy.getCapacity().get(2));
|
||||
assertTrue(copy!=deliver);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,88 @@
|
|||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import jsprit.core.problem.job.Shipment;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
public class DeliverShipmentTest {
|
||||
|
||||
private Shipment shipment;
|
||||
|
||||
private DeliverShipment deliver;
|
||||
|
||||
@Before
|
||||
public void doBefore(){
|
||||
shipment = Shipment.Builder.newInstance("shipment").setPickupLocation("pickupLoc")
|
||||
.setDeliveryLocation("deliveryLoc")
|
||||
.setPickupTimeWindow(TimeWindow.newInstance(1., 2.))
|
||||
.setDeliveryTimeWindow(TimeWindow.newInstance(3., 4.))
|
||||
.addCapacityDimension(0, 10).addCapacityDimension(1, 100).addCapacityDimension(2, 1000).build();
|
||||
deliver = new DeliverShipment(shipment);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCallingCapacity_itShouldReturnCorrectCapacity(){
|
||||
assertEquals(-10,deliver.getCapacity().get(0));
|
||||
assertEquals(-100,deliver.getCapacity().get(1));
|
||||
assertEquals(-1000,deliver.getCapacity().get(2));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Test
|
||||
public void whenCallingCapacityDemand_itShouldReturnCapDimWithIndex0(){
|
||||
assertEquals(-10,deliver.getCapacityDemand());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithEarliestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(3.,deliver.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithLatestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(4.,deliver.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingArrTime_itShouldBeSetCorrectly(){
|
||||
deliver.setArrTime(4.0);
|
||||
assertEquals(4.,deliver.getArrTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingEndTime_itShouldBeSetCorrectly(){
|
||||
deliver.setEndTime(5.0);
|
||||
assertEquals(5.,deliver.getEndTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenIniLocationId_itShouldBeSetCorrectly(){
|
||||
assertEquals("deliveryLoc",deliver.getLocationId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCopyingStart_itShouldBeDoneCorrectly(){
|
||||
DeliverShipment copy = (DeliverShipment) deliver.duplicate();
|
||||
assertEquals(3.,copy.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
assertEquals(4.,copy.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
assertEquals("deliveryLoc",copy.getLocationId());
|
||||
assertEquals(-10,copy.getCapacity().get(0));
|
||||
assertEquals(-100,copy.getCapacity().get(1));
|
||||
assertEquals(-1000,copy.getCapacity().get(2));
|
||||
assertTrue(copy!=deliver);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void whenGettingCapacity_itShouldReturnItCorrectly(){
|
||||
Shipment shipment = Shipment.Builder.newInstance("s").setPickupLocation("pickLoc").setDeliveryLocation("delLoc")
|
||||
.addCapacityDimension(0, 10).addCapacityDimension(1, 100).build();
|
||||
PickupShipment pick = new PickupShipment(shipment);
|
||||
assertEquals(10,pick.getCapacity().get(0));
|
||||
assertEquals(100,pick.getCapacity().get(1));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,76 @@
|
|||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import jsprit.core.problem.job.Service;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
public class PickupServiceTest {
|
||||
|
||||
private Service service;
|
||||
|
||||
private PickupService pickup;
|
||||
|
||||
@Before
|
||||
public void doBefore(){
|
||||
service = Service.Builder.newInstance("service").setLocationId("loc").
|
||||
setTimeWindow(TimeWindow.newInstance(1., 2.)).
|
||||
addCapacityDimension(0, 10).addCapacityDimension(1, 100).addCapacityDimension(2, 1000).build();
|
||||
pickup = new PickupService(service);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCallingCapacity_itShouldReturnCorrectCapacity(){
|
||||
assertEquals(10,pickup.getCapacity().get(0));
|
||||
assertEquals(100,pickup.getCapacity().get(1));
|
||||
assertEquals(1000,pickup.getCapacity().get(2));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Test
|
||||
public void whenCallingCapacityDemand_itShouldReturnCapDimWithIndex0(){
|
||||
assertEquals(10,pickup.getCapacityDemand());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithEarliestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(1.,pickup.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithLatestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(2.,pickup.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingArrTime_itShouldBeSetCorrectly(){
|
||||
pickup.setArrTime(4.0);
|
||||
assertEquals(4.,pickup.getArrTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingEndTime_itShouldBeSetCorrectly(){
|
||||
pickup.setEndTime(5.0);
|
||||
assertEquals(5.,pickup.getEndTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenIniLocationId_itShouldBeSetCorrectly(){
|
||||
assertEquals("loc",pickup.getLocationId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCopyingStart_itShouldBeDoneCorrectly(){
|
||||
PickupService copy = (PickupService) pickup.duplicate();
|
||||
assertEquals(1.,copy.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
assertEquals(2.,copy.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
assertEquals("loc",copy.getLocationId());
|
||||
assertEquals(10,copy.getCapacity().get(0));
|
||||
assertEquals(100,copy.getCapacity().get(1));
|
||||
assertEquals(1000,copy.getCapacity().get(2));
|
||||
assertTrue(copy!=pickup);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,81 @@
|
|||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import jsprit.core.problem.job.Shipment;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
public class PickupShipmentTest {
|
||||
|
||||
private Shipment shipment;
|
||||
|
||||
private PickupShipment pickup;
|
||||
|
||||
@Before
|
||||
public void doBefore(){
|
||||
shipment = Shipment.Builder.newInstance("shipment").setPickupLocation("pickupLoc")
|
||||
.setDeliveryLocation("deliveryLoc")
|
||||
.setPickupTimeWindow(TimeWindow.newInstance(1., 2.))
|
||||
.setDeliveryTimeWindow(TimeWindow.newInstance(3., 4.))
|
||||
.addCapacityDimension(0, 10).addCapacityDimension(1, 100).addCapacityDimension(2, 1000).build();
|
||||
pickup = new PickupShipment(shipment);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCallingCapacity_itShouldReturnCorrectCapacity(){
|
||||
assertEquals(10,pickup.getCapacity().get(0));
|
||||
assertEquals(100,pickup.getCapacity().get(1));
|
||||
assertEquals(1000,pickup.getCapacity().get(2));
|
||||
}
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Test
|
||||
public void whenCallingCapacityDemand_itShouldReturnCapDimWithIndex0(){
|
||||
assertEquals(10,pickup.getCapacityDemand());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithEarliestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(1.,pickup.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithLatestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(2.,pickup.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingArrTime_itShouldBeSetCorrectly(){
|
||||
pickup.setArrTime(4.0);
|
||||
assertEquals(4.,pickup.getArrTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingEndTime_itShouldBeSetCorrectly(){
|
||||
pickup.setEndTime(5.0);
|
||||
assertEquals(5.,pickup.getEndTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenIniLocationId_itShouldBeSetCorrectly(){
|
||||
assertEquals("pickupLoc",pickup.getLocationId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCopyingStart_itShouldBeDoneCorrectly(){
|
||||
PickupShipment copy = (PickupShipment) pickup.duplicate();
|
||||
assertEquals(1.,copy.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
assertEquals(2.,copy.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
assertEquals("pickupLoc",copy.getLocationId());
|
||||
assertEquals(10,copy.getCapacity().get(0));
|
||||
assertEquals(100,copy.getCapacity().get(1));
|
||||
assertEquals(1000,copy.getCapacity().get(2));
|
||||
assertTrue(copy!=pickup);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void whenGettingCapacity_itShouldReturnItCorrectly(){
|
||||
Shipment shipment = Shipment.Builder.newInstance("s").setPickupLocation("pickLoc").setDeliveryLocation("delLoc")
|
||||
|
|
@ -16,10 +85,4 @@ public class PickupShipmentTest {
|
|||
assertEquals(100,pick.getCapacity().get(1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCopyingAct_itShouldCopyItCorrectly(){
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,20 +16,85 @@
|
|||
******************************************************************************/
|
||||
package jsprit.core.problem.solution.route.activity;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import jsprit.core.problem.job.Service;
|
||||
import jsprit.core.problem.solution.route.activity.ServiceActivity;
|
||||
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
|
||||
public class ServiceActivityTest {
|
||||
|
||||
private Service service;
|
||||
|
||||
private ServiceActivity serviceActivity;
|
||||
|
||||
@Before
|
||||
public void doBefore(){
|
||||
service = Service.Builder.newInstance("service").setLocationId("loc").
|
||||
setTimeWindow(TimeWindow.newInstance(1., 2.)).
|
||||
addCapacityDimension(0, 10).addCapacityDimension(1, 100).addCapacityDimension(2, 1000).build();
|
||||
serviceActivity = ServiceActivity.newInstance(service);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCallingCapacity_itShouldReturnCorrectCapacity(){
|
||||
assertEquals(10,serviceActivity.getCapacity().get(0));
|
||||
assertEquals(100,serviceActivity.getCapacity().get(1));
|
||||
assertEquals(1000,serviceActivity.getCapacity().get(2));
|
||||
}
|
||||
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
@Test
|
||||
public void whenCallingCapacityDemand_itShouldReturnCapDimWithIndex0(){
|
||||
assertEquals(10,serviceActivity.getCapacityDemand());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithEarliestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(1.,serviceActivity.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenStartIsIniWithLatestStart_itShouldBeSetCorrectly(){
|
||||
assertEquals(2.,serviceActivity.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingArrTime_itShouldBeSetCorrectly(){
|
||||
serviceActivity.setArrTime(4.0);
|
||||
assertEquals(4.,serviceActivity.getArrTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenSettingEndTime_itShouldBeSetCorrectly(){
|
||||
serviceActivity.setEndTime(5.0);
|
||||
assertEquals(5.,serviceActivity.getEndTime(),0.01);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenIniLocationId_itShouldBeSetCorrectly(){
|
||||
assertEquals("loc",serviceActivity.getLocationId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void whenCopyingStart_itShouldBeDoneCorrectly(){
|
||||
ServiceActivity copy = (ServiceActivity) serviceActivity.duplicate();
|
||||
assertEquals(1.,copy.getTheoreticalEarliestOperationStartTime(),0.01);
|
||||
assertEquals(2.,copy.getTheoreticalLatestOperationStartTime(),0.01);
|
||||
assertEquals("loc",copy.getLocationId());
|
||||
assertTrue(copy!=serviceActivity);
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void whenTwoDeliveriesHaveTheSameUnderlyingJob_theyAreEqual(){
|
||||
Service s1 = Service.Builder.newInstance("s", 10).setLocationId("loc").build();
|
||||
Service s2 = Service.Builder.newInstance("s", 10).setLocationId("loc").build();
|
||||
Service s1 = Service.Builder.newInstance("s").setLocationId("loc").build();
|
||||
Service s2 = Service.Builder.newInstance("s").setLocationId("loc").build();
|
||||
|
||||
ServiceActivity d1 = ServiceActivity.newInstance(s1);
|
||||
ServiceActivity d2 = ServiceActivity.newInstance(s2);
|
||||
|
|
@ -39,8 +104,8 @@ public class ServiceActivityTest {
|
|||
|
||||
@Test
|
||||
public void whenTwoDeliveriesHaveTheDifferentUnderlyingJob_theyAreNotEqual(){
|
||||
Service s1 = Service.Builder.newInstance("s", 10).setLocationId("loc").build();
|
||||
Service s2 = Service.Builder.newInstance("s1", 10).setLocationId("loc").build();
|
||||
Service s1 = Service.Builder.newInstance("s").setLocationId("loc").build();
|
||||
Service s2 = Service.Builder.newInstance("s1").setLocationId("loc").build();
|
||||
|
||||
ServiceActivity d1 = ServiceActivity.newInstance(s1);
|
||||
ServiceActivity d2 = ServiceActivity.newInstance(s2);
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ public class TestTour {
|
|||
|
||||
@Before
|
||||
public void doBefore(){
|
||||
service = Service.Builder.newInstance("yo", 10).setLocationId("loc").build();
|
||||
service = Service.Builder.newInstance("yo").addCapacityDimension(0, 10).setLocationId("loc").build();
|
||||
act = ServiceActivity.newInstance(service);
|
||||
tour = new TourActivities();
|
||||
}
|
||||
|
|
@ -73,7 +73,7 @@ public class TestTour {
|
|||
assertEquals(0, tour.getActivities().size());
|
||||
tour.addActivity(act);
|
||||
assertEquals(1, tour.getActivities().size());
|
||||
Service anotherServiceInstance = Service.Builder.newInstance("yo", 10).setLocationId("loc").build();
|
||||
Service anotherServiceInstance = Service.Builder.newInstance("yo").addCapacityDimension(0, 10).setLocationId("loc").build();
|
||||
assertTrue(service.equals(anotherServiceInstance));
|
||||
boolean removed = tour.removeJob(anotherServiceInstance);
|
||||
assertTrue(removed);
|
||||
|
|
@ -82,7 +82,7 @@ public class TestTour {
|
|||
|
||||
@Test
|
||||
public void whenAddingAShipmentActivity_tourShouldServeShipment(){
|
||||
Shipment s = Shipment.Builder.newInstance("s", 1).setDeliveryLocation("delLoc").setPickupLocation("pickLoc").build();
|
||||
Shipment s = Shipment.Builder.newInstance("s").addCapacityDimension(0, 1).setDeliveryLocation("delLoc").setPickupLocation("pickLoc").build();
|
||||
TourShipmentActivityFactory fac = new DefaultShipmentActivityFactory();
|
||||
TourActivity pickupShipment = fac.createPickup(s);
|
||||
TourActivity deliverShipment = fac.createDelivery(s);
|
||||
|
|
@ -96,7 +96,7 @@ public class TestTour {
|
|||
|
||||
@Test
|
||||
public void whenRemovingShipment_tourShouldNotServiceItAnymore(){
|
||||
Shipment s = Shipment.Builder.newInstance("s", 1).setDeliveryLocation("delLoc").setPickupLocation("pickLoc").build();
|
||||
Shipment s = Shipment.Builder.newInstance("s").addCapacityDimension(0, 1).setDeliveryLocation("delLoc").setPickupLocation("pickLoc").build();
|
||||
TourShipmentActivityFactory fac = new DefaultShipmentActivityFactory();
|
||||
TourActivity pickupShipment = fac.createPickup(s);
|
||||
TourActivity deliverShipment = fac.createDelivery(s);
|
||||
|
|
@ -110,7 +110,7 @@ public class TestTour {
|
|||
|
||||
@Test
|
||||
public void whenRemovingShipment_theirCorrespondingActivitiesShouldBeRemoved(){
|
||||
Shipment s = Shipment.Builder.newInstance("s", 1).setDeliveryLocation("delLoc").setPickupLocation("pickLoc").build();
|
||||
Shipment s = Shipment.Builder.newInstance("s").addCapacityDimension(0, 1).setDeliveryLocation("delLoc").setPickupLocation("pickLoc").build();
|
||||
TourShipmentActivityFactory fac = new DefaultShipmentActivityFactory();
|
||||
TourActivity pickupShipment = fac.createPickup(s);
|
||||
TourActivity deliverShipment = fac.createDelivery(s);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue