private void CreateTestData() { validSwagRec = new IO.Swagger.Models.Recipient("Tobias", "Test", "Horvathgasse 2", "A-1160", "Wien"); validSwagParcel = new IO.Swagger.Models.Parcel(1.5f, validSwagRec); validBLRec = new Entities.Recipient("Tobias", "Test", "Horvathgasse 2", "A-1160", "Wien"); validBLParcel = new Entities.Parcel(1.5f, validBLRec); invalidBLRec = new Entities.Recipient("Tobias", "Test", "Horvathgasse 2", "1160", "Wien"); invalidBLParcel = new Entities.Parcel(1.5f, invalidBLRec); validDALRec = new DataAccess.Entities.Recipient("Tobias", "Test", "Horvathgasse 2", "A-1160", "Wien"); validDALParcel = new DataAccess.Entities.Parcel(1.5f, validDALRec, 1); validSARecipient = new ServiceAgents.DTOs.Recipient("Tobias", "Test", "Horvathgasse 2", "A-1160", "Wien"); validBLLocation = new Entities.Location { Lat = 48.2057943, Lng = 16.3066716 }; }
private DataAccess.Entities.TrackingInformation GenerateTrackingInformation(DataAccess.Entities.Parcel parcel) { //Create new empty TrackingInformation var dalTrackInfo = new DataAccess.Entities.TrackingInformation(DataAccess.Entities.TrackingInformation.StateEnum.InTransportEnum); var trackInfoId = _trackingRepo.Create(dalTrackInfo); dalTrackInfo.FutureHops = new List <DataAccess.Entities.HopArrival>(); dalTrackInfo.VisitedHops = new List <DataAccess.Entities.HopArrival>(); //Get destination of parcel var blRecipient = _mapper.Map <Entities.Recipient>(parcel.Recipient); var saRecipient = _mapper.Map <ServiceAgents.DTOs.Recipient>(blRecipient); var saLocation = _encodingAgent.EncodeAddress(saRecipient); var blLocation = _mapper.Map <Entities.Location>(saLocation); //Select nearest truck var truck = SelectNearestTruck(blLocation); if (truck == null) { throw new BlException("The given address is not in the range of service"); } //Get itinerary of parcel and create hop arrival estimations var warehouses = GetItinerary(truck); var date = DateTime.Now; foreach (var wh in warehouses) { date = date.AddDays((double)wh.Duration); var hop = new DataAccess.Entities.HopArrival { DateTime = date, Code = wh.Code, Status = "future", TrackingInformationId = trackInfoId }; _hopArrivalRepo.Create(hop); dalTrackInfo.FutureHops.Add(hop); } date = date.AddDays((double)truck.Duration); var truckHop = new DataAccess.Entities.HopArrival { DateTime = date, Code = truck.Code, Status = "future", TrackingInformationId = trackInfoId }; _hopArrivalRepo.Create(truckHop); dalTrackInfo.FutureHops.Add(truckHop); return(dalTrackInfo); }
public TrackingLogicTests() { mockHopRepo = new MockHopArrivalRepository(); mockTrackRepo = new MockTrackingInformationRepository(); mockParcelRepo = new MockParcelRepository(mockTrackRepo); SetupBLTrackingInfo(); SetupDALTrackingInfo(); SetupSwagTrackingInfo(); validBLRec = new Entities.Recipient("Tobias", "Test", "Teststraße 9", "A-1140", "Wien"); validBLParcel = new Entities.Parcel(1.5f, validBLRec); validBLParcel.TrackingInformation = validBLInfo; validDALRec = new DataAccess.Entities.Recipient("Tobias", "Test", "Teststraße 9", "A-1140", "Wien"); validDALParcel = new DataAccess.Entities.Parcel(1.5f, validDALRec, 1); validDALParcel.TrackingInformation = validDALInfo; validDALParcel.TrackingInformationId = 1; }