public void NestedTest() { var souce = "{1,2,named={10,20},{30,40}}".AsStream(); var actual = LuaTableParser.TableElementParser(souce); actual.Case(Fail, (_, elem) => { elem.GedChildren().Count().Is(4); elem.Traverse().Count().Is(8); var array = elem.Traverse().Where(x => x is ValueElement).Cast <ValueElement>() .Select(x => ((IntegerValue)x.Content).Value).ToArray(); var exp = new[] { 1, 2, 10, 20, 30, 40 }; foreach (var i in exp) { array.Contains(i).IsTrue(); } }); }
public void SimpleTest() { var source = "{1,2,3}"; var actual = LuaTableParser.TableElementParser(source.AsStream()); actual.Case(Fail, (_, elem) => { var array = elem.GedChildren() .Cast <ValueElement>() .Select(x => x.Content) .Cast <IntegerValue>() .Select(x => x.Value) .ToArray(); array.Length.Is(3); array.Contains(1).IsTrue(); array.Contains(2).IsTrue(); array.Contains(3).IsTrue(); }); }