Now, Required exception message only shows the name of the value to parse. To ease troubleshooting, Required exception message should display the section name too.
[Test]
public void Parse_RequiredAndPatternNotFound_ThrowsExceptionIncludingSectionName()
{
var sectionName = "Key";
var p = new Dictionary<String, IList<IParse>>
{
{
sectionName,
new List<IParse>
{
new Required(new ParseFromRegex(key: "Value", pattern: new Regex(@"Value:\s*(\d+)")))
}
}
};
var lines = FromText(@"
This line doesn't match");
var parser = new Parser(p);
var e = Assert.Throws<ArgumentNullException>(() => parser.Parse(lines));
StringAssert.Contains(sectionName, e.Message);
}
Now, Required exception message only shows the name of the value to parse. To ease troubleshooting, Required exception message should display the section name too.