Ejemplo n.º 1
0
        public async Task <ActionResult> DeleteCrewAsync(CrewVm crewVm)
        {
            await _crewService.DeleteCrewAsync(crewVm);

            Log.Information("Crew {@crewVm} deleted", crewVm);
            return(Ok());
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        /// <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();
        }
Ejemplo n.º 5
0
        /// <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();
        }
Ejemplo n.º 6
0
        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);
        }