コード例 #1
0
        public void Validate_UnableToAccessEquipmentNotOwned_ReturnsCorrectErrorMessage()
        {
            var user1 = new User {
                Id = NextId
            };
            var user2 = new User {
                Id = NextId
            };

            Context.Users.Add(user1);
            Context.Users.Add(user2);

            var equipment = new Equipment {
                Id = NextId, UserId = user1.Id
            };

            Context.Equipments.Add(equipment);
            Context.SaveChanges();

            var equipmentEditDto = new EquipmentEditDto {
                Id = equipment.Id, UserId = user2.Id
            };
            var validator = new EquipmentEditDtoValidator(Context);
            var result    = validator.Validate(equipmentEditDto);

            var hasErrorMessage = result.Errors.Any(x =>
                                                    x.ErrorMessage == "You cannot edit an equipment that you do not own." &&
                                                    x.PropertyName == "");

            Assert.IsTrue(hasErrorMessage);
        }
コード例 #2
0
        public void Validate_EquipmentIdIsEmpty_ReturnsCorrectErrorMessage()
        {
            var request = new EquipmentEditDto();

            var validator = new EquipmentEditDtoValidator(Context);
            var result    = validator.Validate(request);

            var hasCorrectErrorMessage = result.Errors.Any(x =>
                                                           x.ErrorMessage == "'Id' must not be empty." &&
                                                           x.PropertyName == nameof(EquipmentEditDto.Id));

            Assert.IsTrue(hasCorrectErrorMessage);
        }
コード例 #3
0
        public void Validate_EquipmentIdDoesNotExist_ReturnsCorrectErrorMessage()
        {
            var request = new EquipmentEditDto {
                Id = NextId
            };

            var validator = new EquipmentEditDtoValidator(Context);
            var result    = validator.Validate(request);

            var hasCorrectErrorMessage = result.Errors.Any(x =>
                                                           x.ErrorMessage == "This 'Equipment' does not exist." &&
                                                           x.PropertyName == nameof(EquipmentEditDto.Id));

            Assert.IsTrue(hasCorrectErrorMessage);
        }
コード例 #4
0
        public void Validate_EverythingIsWorking_ReturnsNoErrorMessage()
        {
            var request = new EquipmentEditDto {
                UserId = NextId, Id = NextId, Name = $"{NextId}"
            };

            var validator = new EquipmentEditDtoValidator(Context);
            var result    = validator.Validate(request);

            var hasCorrectErrorMessage = result.Errors.Any(x =>
                                                           x.ErrorMessage == "'Name' must not be empty." &&
                                                           x.PropertyName == "");

            Assert.IsTrue(!hasCorrectErrorMessage);
        }
コード例 #5
0
        public async Task <bool> EditEquipmentAsync(EquipmentEditDto eq)
        {
            using (var uow = UnitOfWorkProvider.Create())
            {
                if ((await _equipmentService.GetAsync(eq.Id, false)) == null)
                {
                    return(false);
                }
                await _equipmentService.Update(eq);

                await uow.Commit();

                return(true);
            }
        }
コード例 #6
0
        public IActionResult Put(int equipmentId, [FromBody] EquipmentEditDto equipmentEditDto)
        {
            equipmentEditDto.Id     = equipmentId;
            equipmentEditDto.UserId = int.Parse(User.FindFirst(ClaimTypes.Name).Value);

            var validationResult = _equipmentEditDtoValidator.Validate(equipmentEditDto);

            if (!validationResult.IsValid)
            {
                return(BadRequest(ValidationHelpers.ConvertValidationResult(validationResult)));
            }

            var routine = _equipmentRepository.EditEquipment(equipmentId, equipmentEditDto);

            return(Ok(routine));
        }
コード例 #7
0
        public EquipmentGetDto EditEquipment(int userId, EquipmentEditDto equipmentEditDto)
        {
            var equipment = _context.Set <Equipment>().Find(userId);

            equipment.Name = equipmentEditDto.Name;

            _context.SaveChanges();

            var equipmentGetDto = new EquipmentGetDto
            {
                Id     = equipment.Id,
                Name   = equipment.Name,
                UserId = equipment.UserId
            };

            equipmentGetDto.Id = equipment.Id;

            return(equipmentGetDto);
        }