public void EmptyStringProvidedUriReturnedWithError() { DmarcUri dmarcUri = new DmarcUri(null); dmarcUri.AddError(new Error(ErrorType.Error, string.Empty)); A.CallTo(() => _dmarcUriParser.Parse(null)).Returns(dmarcUri); UriTag uriTag = _parser.Parse(string.Empty); Assert.That(uriTag.Uri, Is.SameAs(dmarcUri)); Assert.That(uriTag.MaxReportSize, Is.Null); Assert.That(uriTag.AllErrorCount, Is.EqualTo(1)); A.CallTo(() => _dmarcUriParser.Parse(null)).MustHaveHappened(Repeated.Exactly.Once); A.CallTo(() => _maxReportSizeParser.Parse(SizeString)).MustNotHaveHappened(); }
public DmarcUri Parse(string value) { Uri uri = value != null && Uri.IsWellFormedUriString(value, UriKind.Absolute) ? new Uri(value, UriKind.Absolute) : null; DmarcUri dmarcUri = new DmarcUri(uri); if (uri == null) { string errorMessage = string.Format(DmarcParserResource.InvalidValueErrorMessage, "uri", value); dmarcUri.AddError(new Error(ErrorType.Error, errorMessage)); } return(dmarcUri); }