public void ShouldConvertToStringWithBullet() { ZeroOrMore predicate; Sequence sequence; Terminal terminal; terminal = new Terminal('a'); predicate = new ZeroOrMore(); predicate.Item = terminal; Assert.AreEqual("•a*", predicate.ToString(terminal)); sequence = new Sequence(); sequence.Items.Add(new Terminal('a')); sequence.Items.Add(terminal); sequence.Items.Add(new Terminal('a')); predicate = new ZeroOrMore(); predicate.Item = sequence; Assert.AreEqual("(a•aa)*", predicate.ToString(terminal)); }
public void ShouldConvertToStringWithBullet() { ZeroOrMore predicate; Sequence sequence; Terminal terminal; terminal = new Terminal(new Token("C", "a")); predicate = new ZeroOrMore(); predicate.Item = terminal; Assert.AreEqual("•<C,a>*", predicate.ToString(terminal)); sequence = new Sequence(); sequence.Items.Add(new Terminal(new Token("C", "a"))); sequence.Items.Add(terminal); sequence.Items.Add(new Terminal(new Token("C", "a"))); predicate = new ZeroOrMore(); predicate.Item = sequence; Assert.AreEqual("(<C,a>•<C,a><C,a>)*", predicate.ToString(terminal)); }
public void ShouldConvertToGrammarString() { var expr = new ZeroOrMore(new LiteralTerminal("a")); Assert.Equal("'a'*", expr.ToString()); }