public void Can_Remove_Entity() { // Arrange var entity = new ShipsToRequest { Origin = new WarehouseResponse() { Id = 1 }, Destiny = new WarehouseResponse() { Id = 4 }, Cost = 3, Time = 3 }; // Act Service.Remove(entity); // Assert Repository.Verify(x => x.Delete(It.IsAny <SHIPS_TO>(), It.IsAny <Warehouse>(), It.IsAny <Warehouse>()), Times.Once); var entityResult = Service.GetDirectRoute(entity.Origin.Id, entity.Destiny.Id); var entities = Service.Get(); Assert.Empty(entityResult); Assert.Equal(2, entities.Count()); }
public void Can_Update_Entity() { // Arrange var entity = new ShipsToRequest { Origin = new WarehouseResponse() { Id = 1 }, Destiny = new WarehouseResponse() { Id = 3 }, Cost = 3, Time = 30 }; // Act Service.Update(entity); // Assert Repository.Verify(x => x.Update(It.IsAny <SHIPS_TO>(), It.IsAny <Warehouse>(), It.IsAny <Warehouse>()), Times.Once); var entityResult = Service.GetDirectRoute(entity.Origin.Id, entity.Destiny.Id).SingleOrDefault(); Assert.Equal(3, entityResult.Cost); Assert.Equal(30, entityResult.Time); var entities = Service.Get(); Assert.Equal(3, entities.Count()); }
public void Can_Insert_Entity() { // Arrange var entity = new ShipsToRequest { Origin = new WarehouseResponse() { Id = 1 }, Destiny = new WarehouseResponse() { Id = 4 }, Cost = 100, Time = 50 }; // Act Service.Create(entity); // Assert Repository.Verify(x => x.Insert(It.IsAny <SHIPS_TO>(), It.IsAny <Warehouse>(), It.IsAny <Warehouse>()), Times.Once); var entities = Service.Get(); Assert.Equal(4, entities.Count()); }
public void Remove(ShipsToRequest entity) { var origin = _mapper.Map <WarehouseResponse, Warehouse>(entity.Origin); var destiny = _mapper.Map <WarehouseResponse, Warehouse>(entity.Destiny); _repository.Delete(_mapper.Map <ShipsToRequest, SHIPS_TO>(entity), origin, destiny); }
public void RemoveRoute([Required] string origin, [Required] string destiny) { var originWarehouse = GetWarehouseByName(origin); var destinyWarehouse = GetWarehouseByName(destiny); if (!_service.GetDirectRoute(originWarehouse.Id, destinyWarehouse.Id).Any()) { throw new HttpRequestException(_errorHandler.GetErrorMessage(ErrorMessagesEnum.EntityNotFound)); } var request = new ShipsToRequest { Origin = originWarehouse, Destiny = destinyWarehouse }; _service.Remove(request); }
public void UpdateRoute([Required] string origin, [Required] string destiny, [FromBody] ShipsToRequestModel entity) { WarehouseResponse originWarehouse, destinyWarehouse; ValidateRequest(origin, destiny, entity, out originWarehouse, out destinyWarehouse); if (!_service.GetDirectRoute(originWarehouse.Id, destinyWarehouse.Id).Any()) { throw new HttpRequestException(_errorHandler.GetErrorMessage(ErrorMessagesEnum.EntityNotFound)); } var request = new ShipsToRequest { Cost = entity.Cost, Time = entity.Time, Origin = originWarehouse, Destiny = destinyWarehouse }; _service.Update(request); }