public void TestInvalidCep() { Cep cep = new Cep("234-5"); cep.IsValid().Should().BeFalse(); cep.GetValidationErrors().Should().NotBeEmpty(); cep.GetValidationErrors().Should().NotContain(err => err.PropertyName == nameof(Cep.Value) && err.ErrorCode == ErrorCodes.CepRequired); cep.GetValidationErrors().Should().Contain(err => err.PropertyName == nameof(Cep.Value) && err.ErrorCode == ErrorCodes.CepInvalidPattern); AssertInvalidCepComponents(cep); }
/// <summary> /// Get cep details information from cep /// </summary> public Task <ResponseMessage <CepDetails> > SendRequestAsync(Cep cep) { if (cep == null) { return(Task.FromResult(new ResponseMessage <CepDetails>(ErrorCodes.CepRequired, "Cep is required"))); } cep.Validate(); if (cep.IsInvalid()) { return(Task.FromResult(new ResponseMessage <CepDetails>(cep.GetValidationErrors().First()))); } return(SendRequestAndParseResultAsync(cep)); }
public async Task SendRequestCep_WhenCepIsInvalid_MustReturnValidationError(string cep) { //Given IViaCepClient viaCepClient = CreateViaCepClientInstance(); Cep invalidCep = new Cep(cep); invalidCep.Validate(); IError error = invalidCep.GetValidationErrors().First(); //When ResponseMessage <CepDetails> response = await viaCepClient.SendRequestAsync(invalidCep); //Then response.Should().NotBeNull(); response.IsSuccessfulResponse.Should().BeFalse(); response.Content.Should().BeNull(); response.ErrorCode.Should().Be(error.ErrorCode); response.ErrorMessage.Should().Be(error.ErrorMessage); response.ErrorPropertyName.Should().Be(error.PropertyName); }