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); }