package dist.service; import dist.models.*; import models.OrderModel; import models.OrderStatus; import models.PositionModel; import org.joda.time.DateTime; import org.junit.Test; import service.OrderService; import service.PoseidonPropertyService; import service.PoseidonService; import util.InMemoryDbTest; import static org.junit.Assert.*; public class DistServiceTest extends InMemoryDbTest { @Test public void testSyncOrderImmediately() throws Exception { DistService service = new DistService(fakeUser); DateTime now = getTime(2015, 10, 14, 11, 6); PoseidonService.setNow(now); OrderModel orderModel = new OrderModel(); orderModel.start_date1 = getTime(2015,10,14,0,0).toDate(); orderModel.start_termin1 = 15; orderModel.end_date1 = null; orderModel.end_termin1 = null; PositionModel position = new PositionModel(); position.name = "TestPosition"; position.latitude = 10.0; position.longitude= 20.0; position.save(); orderModel.position = position; orderModel.assignStatus(now); orderModel.save(); assertEquals("New 1", OrderStatus.ACTIVE, orderModel.orderStatus); service.syncOrderImmediately(orderModel); String locationName = PoseidonPropertyService.getProperty("dist.location.nameprefix") + String.valueOf(orderModel.id); DistLocation distLocation = DistLocation.findByName(locationName); assertNotNull("location ble ikke funnet etter sync", distLocation); DistProduct product = DistProduct.find.byId(locationName); assertNotNull("product ble ikke funnet etter sync", product); DistLocationHostPK hostPk = new DistLocationHostPK(); String host1 = "c1vb1"; hostPk.host = host1; hostPk.location = locationName; DistLocationHost locationHost = DistLocationHost.find.byId(hostPk); assertNotNull("locationHost ble ikke funnet etter sync", locationHost); } @Test public void testSyncDistdata() throws Exception { DistService service = new DistService(fakeUser); DateTime now = getTime(2016, 2, 10, 11, 6); PoseidonService.setNow(now); DistSyncSummary syncSummary = service.syncDistdata(); assertNotNull("Uventet: syncDistData returnerte null summary",syncSummary); assertEquals("Uventet antall slettede ordre", 8, syncSummary.deletedOrders); assertEquals("Uventet antall synkede ordre", 4, syncSummary.syncedOrders); } }