public void Test(string value, FailureOptionType failureOptionType, int errorCount) { FailureOption tag = (FailureOption)_parser.Parse(string.Empty, value); Assert.That(tag.FailureOptionType, Is.EqualTo(failureOptionType)); Assert.That(tag.ErrorCount, Is.EqualTo(errorCount)); }
public Tag Parse(string tag, string value) { FailureOptionType failureOptionType; switch (value?.ToLower()) { case "0": failureOptionType = FailureOptionType.Zero; break; case "1": failureOptionType = FailureOptionType.One; break; case "d": failureOptionType = FailureOptionType.D; break; case "s": failureOptionType = FailureOptionType.S; break; default: failureOptionType = FailureOptionType.Unknown; break; } FailureOption failureOption = new FailureOption(tag, failureOptionType); if (failureOptionType == FailureOptionType.Unknown) { string errorMessage = string.Format(DmarcParserResource.InvalidValueErrorMessage, Tag, value); failureOption.AddError(new Error(ErrorType.Error, errorMessage)); } return failureOption; }