public void Update_WhenDtoIsPassed_ThenReturnedTheSameWithPassedId()
        {
            // Arrange
            var id = Guid.NewGuid();
            var aeroplaneTypeId = Guid.NewGuid();

            var dto = new AeroplaneDto()
            {
                AeroplaneTypeId = aeroplaneTypeId,
                Name            = "Boeing-747",
                Lifetime        = new TimeSpan(10, 0, 0)
            };

            A.CallTo(() => unitOfWorkFake.AeroplaneTypeRepository.Get(aeroplaneTypeId))
            .Returns(new AeroplaneType {
                Id = aeroplaneTypeId
            });

            var service = new AeroplaneService(unitOfWorkFake, mapper, alwaysValidValidator);

            // Act
            var returnedDto = service.Update(id, dto);

            // Assert
            Assert.True(returnedDto.Id == id);
            Assert.True(returnedDto.Id != default(Guid));
            Assert.AreEqual(dto.Name, returnedDto.Name);
            Assert.AreEqual(dto.Lifetime, returnedDto.Lifetime);
            Assert.AreEqual(dto.AeroplaneTypeId, returnedDto.AeroplaneTypeId);
        }
Example #2
0
        public AeroplaneDto Update(Guid id, AeroplaneDto aeroplaneDto)
        {
            var aeroplane = mapper.Map<AeroplaneDto, Aeroplane>(aeroplaneDto);

            aeroplane.Id = id;
            aeroplane.AeroplaneType = db.AeroplaneTypeRepository.Get(aeroplaneDto.AeroplaneTypeId);
            db.AeroplaneRepository.Update(aeroplane);

            return mapper.Map<Aeroplane, AeroplaneDto>(aeroplane);
        }
Example #3
0
        public AeroplaneDto Create(AeroplaneDto aeroplaneDto)
        {
            var aeroplane = mapper.Map<AeroplaneDto, Aeroplane>(aeroplaneDto);

            aeroplane.Id = Guid.NewGuid();
            aeroplane.AeroplaneType = db.AeroplaneTypeRepository.Get(aeroplaneDto.AeroplaneTypeId);
            db.AeroplaneRepository.Create(aeroplane);

            return mapper.Map<Aeroplane, AeroplaneDto>(aeroplane);
        }
        public void Create_WhenDtoIsEmpty_ThenThrowValidExeption()
        {
            // Arrange
            var dto = new AeroplaneDto()
            {
            };

            var service = new AeroplaneService(unitOfWorkFake, mapper, validator);

            // Act

            // Assert
            Assert.Throws <ValidationException>(() => service.Create(dto));
        }
        public IActionResult Put(Guid id, [FromBody] AeroplaneDto aeroplaneDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(new { Type = "ValidationError", ErrorMessage = "Required fields is empty" }));
            }

            AeroplaneDto resultDto;

            try
            {
                resultDto = aeroplaneService.Update(id, aeroplaneDto);
            }
            catch (Exception ex)
            {
                return(BadRequest(new { ErrorType = ex.GetType().Name, ex.Message }));
            }

            return(Ok(resultDto));
        }
Example #6
0
        public AeroplaneDto Update(Guid id, AeroplaneDto aeroplaneDto)
        {
            var aeroplane = mapper.Map <AeroplaneDto, Aeroplane>(aeroplaneDto);

            aeroplane.Id            = id;
            aeroplane.AeroplaneType = db.AeroplaneTypeRepository.Get(aeroplaneDto.AeroplaneTypeId);

            var validationResult = validator.Validate(aeroplane);

            if (validationResult.IsValid)
            {
                db.AeroplaneRepository.Update(aeroplane);
                db.SaveChanges();
            }
            else
            {
                throw new ValidationException(validationResult.Errors);
            }

            return(mapper.Map <Aeroplane, AeroplaneDto>(aeroplane));
        }