public async Task <ActionResult> DeleteCrewAsync(CrewVm crewVm) { await _crewService.DeleteCrewAsync(crewVm); Log.Information("Crew {@crewVm} deleted", crewVm); return(Ok()); }
public async Task ShouldUpdateCrewName() { // Create 2 crews await CreateCrew(_crewName2); await CreateCrew(_crewName3); // Update one CrewService crewService = new CrewService(_dbContext, _mainEventProvider); CrewController crewController = new CrewController(crewService); CrewVm crewNewData = new CrewVm { CrewId = 2, CrewName = "New Name" }; await crewController.UpdateCrewAsync(crewNewData); // Check that only one has been changed Crew crew1 = _dbContext.Crews.Find(2); Assert.AreEqual(crewNewData.CrewName, crew1.Name); Crew crew2 = _dbContext.Crews.Find(3); Assert.AreEqual(crew2.Name, _crewName3); }
public async Task ShouldDeleteCrew() { // Create 2 crews await CreateCrew(_crewName2); await CreateCrew(_crewName3); // Delete the first CrewService crewService = new CrewService(_dbContext, _mainEventProvider); CrewController crewController = new CrewController(crewService); CrewVm crewVm = new CrewVm { CrewId = 2 }; await crewController.DeleteCrewAsync(crewVm); // Check that we have deleted only one // Check that the others still has data Crew crew1 = _dbContext.Crews.Find(1); Assert.IsNotNull(crew1); Crew crew2 = _dbContext.Crews.Find(2); Assert.IsNull(crew2); Crew crew3 = _dbContext.Crews.Find(3); Assert.IsNotNull(crew3); Assert.AreEqual(_crewName3, crew3.Name); }
/// <summary> /// Delete crew /// </summary> /// <param name="crewVm"></param> public async Task DeleteCrewAsync(CrewVm crewVm) { var crewToBeDeleted = await _dbContext.Crews.Where(a => a.Id == crewVm.CrewId).SingleOrDefaultAsync(); if (crewToBeDeleted == null) { throw new HttpException(HttpStatusCode.NotFound, $"Fant ikke arbeidslaget: {crewVm.CrewName}"); } _dbContext.Remove <Crew>(crewToBeDeleted); await _dbContext.SaveChangesAsync(); }
/// <summary> /// Modify crew /// </summary> /// <param name="crewVm"></param> public async Task UpdateCrewAsync(CrewVm crewVm) { var existingCrew = _dbContext.Crews.Where(a => a.Id == crewVm.CrewId).SingleOrDefault(); if (existingCrew == null) { throw new HttpException(HttpStatusCode.NotFound, $"Fant ikke arbeidslaget: {crewVm.CrewName}"); } if (crewVm.CrewName == null) { crewVm.CrewName = existingCrew.Name; } existingCrew.Id = crewVm.CrewId; existingCrew.Name = crewVm.CrewName; _dbContext.Update <Crew>(existingCrew); await _dbContext.SaveChangesAsync(); }
public async Task ShouldGetCrewById() { // Create 2 crews await CreateCrew(_crewName2); await CreateCrew(_crewName3); // Check that we can get both by id CrewService crewService = new CrewService(_dbContext, _mainEventProvider); CrewController crewController = new CrewController(crewService); ActionResult <CrewVm> result1 = await crewController.GetCrewAsync(2); CrewVm returnedCrew1 = (CrewVm)((OkObjectResult)result1.Result).Value; Assert.AreEqual(2, returnedCrew1.CrewId); Assert.AreEqual(_crewName2, returnedCrew1.CrewName); ActionResult <CrewVm> result2 = await crewController.GetCrewAsync(3); CrewVm returnedCrew2 = (CrewVm)((OkObjectResult)result2.Result).Value; Assert.AreEqual(3, returnedCrew2.CrewId); Assert.AreEqual(_crewName3, returnedCrew2.CrewName); }