Esempio n. 1
0
        public async Task <IActionResult> UpdateMakeAsync(int id, [FromBody] MakeResource make)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try {
                Make domainMake = await _repository.GetAsync(id);

                if (domainMake == null)
                {
                    return(BadRequest($"Make with id = {id} does not exist!"));
                }

                _mapper.Map(make, domainMake);
                domainMake.Id = id;
                await _unitOfWork.CompeleteAsync();

                Make found = await _repository.GetAsync(id);

                MakeResource result = _mapper.Map <Make, MakeResource>(found);
                return(Ok(result));
            } catch (Exception e) {
                return(StatusCode(500, e.InnerException?.Message ?? e.Message));
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> CreateMake([FromBody] MakeResource makeResource)
        {
            var make = _mapper.Map <MakeResource, Make>(makeResource);

            _makeRepository.Add(make);
            await _unitOfWork.CompleteAsync();

            return(Ok(_mapper.Map <Make, MakeResource>(make)));
        }
Esempio n. 3
0
        public async Task CanValidateMake_UpdateMake_RequiredFielsAreMissing()
        {
            MakeResource makeResource = new MakeResource {
                Name = null
            };

            _controller.ModelState.AddModelError("Name", "Name field is required.");

            IActionResult actual = await _controller.UpdateMakeAsync(It.IsAny <int>(), makeResource);

            _makesRepository.Verify(db => db.GetAsync(It.IsAny <int>()), Times.Never);
            var errors = ControllerTestHelper.GetBadRequestErrors(actual);

            Assert.AreEqual(new[] { "Name field is required." }, errors["Name"]);
        }
Esempio n. 4
0
        public IActionResult GetAllMakes()
        {
            var allMakes = makes.GetAllMakes();
            var listing  = new List <MakeResource>();

            //returns status code with object
            foreach (var make in allMakes)
            {
                var makeResource = new MakeResource();

                makeResource.Id     = make.Id;
                makeResource.Name   = make.Name;
                makeResource.Models = getModel(make.Models);
                listing.Add(makeResource);
            }

            return(Ok(listing));
        }
Esempio n. 5
0
        public async Task <IActionResult> CreateMakeAsync([FromBody] MakeResource make)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try {
                Make domainMake = _mapper.Map <MakeResource, Make>(make);
                await _repository.CreateAsync(domainMake);

                await _unitOfWork.CompeleteAsync();

                int  id    = domainMake.Id;
                Make found = await _repository.GetAsync(id);

                MakeResource result = _mapper.Map <Make, MakeResource>(found);
                return(Ok(result));
            } catch (Exception e) {
                return(StatusCode(500, e.InnerException?.Message ?? e.Message));
            }
        }