public IList<Rule> ParseRules() { this.SkipBlankLines(); Token token = this.NextToken(); if (token == null) return null; this.PushToken(token); this.ParseWordLine("rules"); IList<Rule> rules = new List<Rule>(); for (var rule = this.ParseRule(); rule != null; rule = this.ParseRule()) rules.Add(rule); this.SkipBlankLines(); this.ParseWordLine("end"); return rules; }
public void ParseTwoRulesFile() { Parser parser = new Parser(new StreamReader("TwoRules.txt")); IList<Rule> rules = parser.ParseRules(); Assert.IsNotNull(rules); Assert.AreEqual(2, rules.Count); Assert.IsNull(parser.ParseRules()); }