public void should_validate_request() { var validator = new UpdateAccountRequestValidator(); validator.ShouldHaveValidationErrorFor(x => x.Name, null as AccountName); var nameValidator = new AccountNameValidator(); nameValidator.ShouldHaveValidationErrorFor(x => x.Name, null as string); nameValidator.ShouldHaveValidationErrorFor(x => x.Name, new string('a', AccountService.AccountName.MaxLength + 10)); nameValidator.ShouldHaveValidationErrorFor(x => x.Language, null as Language?); nameValidator.ShouldHaveValidationErrorFor(x => x.Language, (Language)666); var validRequest = new UpdateAccountRequest { Name = new AccountName { Name = "Bla", Language = Language.English } }; validator.ShouldNotHaveValidationErrorFor(x => x.Name, validRequest); validator.ShouldNotHaveValidationErrorFor(x => x.Name.Name, validRequest); validator.ShouldNotHaveValidationErrorFor(x => x.Name.Language, validRequest); }
protected override void Context() { base.Context(); _updateAccountRequest = new UpdateAccountRequest { AccountId = 7, FirstName = "Colin", LastName = "Callahan", EmailAddress = "*****@*****.**", Role = Role.Administrator, }; AuthorizationService.Stub( x => x.CanExecute(Arg<string>.Is.Equal(Username), Arg<Type>.Is.Equal(typeof(UpdateAccountRequest)))). Return(true); _updateAccountRequestValidator = MockRepository.GenerateStub<UpdateAccountRequestValidator>(); _updateAccountRequestValidator.Stub( x => x.Validate(Arg<UpdateAccountRequest>.Is.Equal(_updateAccountRequest))) .Return(new ValidationResult()); //ValidatorFactory.Stub( // x => x.Create<UpdateAccountRequest>()) // .Return(_updateAccountRequestValidator); AccountRepository.Stub( x => x.Update(Arg<UpdateAccountRequest>.Is.Equal(_updateAccountRequest))) .WhenCalled(x => _updateAccountRequestPassedToRepository = x.Arguments[0] as UpdateAccountRequest); _expectedUpdateAccountResponse = new UpdateAccountResponse { Success = true, }; _expectedUpdateAccountRequest = new UpdateAccountRequest { FirstName = "Colin", LastName = "Callahan", EmailAddress = "*****@*****.**", }; }