public async Task <ActionResult <TransformerViewModel> > Create([FromBody] TransformerViewModel transformer)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!await _transformerRepository.ExistsCategoryAsync(transformer.Category.Id))
            {
                return(NotFound());
            }

            await _transformerRepository.AddAsync(new TransformerModel
            {
                Id       = transformer.Id,
                Name     = transformer.Name,
                Alliance = transformer.Allicance,
                Category = new CategoryModel
                {
                    Id = transformer.Category.Id
                }
            });

            return(CreatedAtAction(nameof(Get), new { transformer.Id }, transformer));
        }
        public async Task <ActionResult> Update(string id, [FromBody] TransformerViewModel transformer)
        {
            if (id != transformer.Id || !ModelState.IsValid)
            {
                return(BadRequest());
            }

            if (!await _transformerRepository.ExistsCategoryAsync(transformer.Category.Id))
            {
                return(NotFound());
            }

            if (!await _transformerRepository.ExistsAsync(id))
            {
                return(NotFound());
            }

            await _transformerRepository.UpdateAsync(new TransformerModel
            {
                Id       = transformer.Id,
                Name     = transformer.Name,
                Alliance = transformer.Allicance,
                Category = new CategoryModel
                {
                    Id = transformer.Category.Id
                }
            });

            return(NoContent());
        }
Пример #3
0
        public async void AddOperation_InvalidInput_BadRequest(string name, int?rank)
        {
            var model = new TransformerViewModel()
            {
                Name = name, Rank = rank ?? null
            };

            SimulateValidation(model);

            var result = await _sut.AddAutobot(model);

            Assert.IsType <BadRequestObjectResult>(result);
            Assert.Equal(((BadRequestObjectResult)result).Value, Responses.ERROR_INVALID_INPUTS_ADD_TRANSFORMER);
        }
        //Add Transformer object
        async Task <IActionResult> AddTransformer([FromBody] TransformerViewModel transformer, TransformerType type, string strCreatedAtRoute)
        {
            if (ModelState.IsValid)
            {
                var transformerObject = _factory.Create(transformer);
                transformerObject.Allegiance = type;

                transformerObject = await _datastore.AddTransformerAsync(transformerObject);

                return(CreatedAtRoute(strCreatedAtRoute, transformerObject));
            }
            else
            {
                return(BadRequest(Responses.ERROR_INVALID_INPUTS_ADD_TRANSFORMER));
            }
        }
Пример #5
0
 //Creates ITransformer from TransformerViewModel
 public ITransformer Create(TransformerViewModel model)
 {
     return(new Transformer
     {
         Allegiance = model.Allegiance,
         Name = model.Name,
         Strength = model.Strength,
         Intelligence = model.Intelligence,
         Speed = model.Speed,
         Endurance = model.Endurance,
         Rank = model.Rank.Value,
         Courage = model.Courage,
         Firepower = model.Firepower,
         Skill = model.Skill,
         IsActive = model.IsActive
     });
 }
 public async Task <IActionResult> AddDecepticon([FromBody] TransformerViewModel transformer)
 {
     return(await AddTransformer(transformer, TransformerType.Decepticons, "AddDecepticon"));
 }
 public async Task <IActionResult> AddAutobot([FromBody] TransformerViewModel transformer)
 {
     return(await AddTransformer(transformer, TransformerType.Autobots, "AddAutobot"));
 }