public void TestOneChild() { var container = StringContainer.Get("(id)"); Assert.AreEqual(container.Children[0].Data, "id"); Assert.IsNull(container.Children[0].Children); }
public void TestSuperDeepNestedString() { string str = "(id,created,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname,employee(id,firstname,employeeType(id),lastname))))))))))))))))))))))),location(id,lat,long),something,anything)"; var container = StringContainer.Get(str); container.Sort(); }
public void TestUltraNestingWithoutEnclosingParens() { var container = StringContainer.Get("data(name1,age1),id(name2,age2(hello,bye)),you(name3,age3)"); Assert.AreEqual(container.Children[0].Data, "data"); Assert.AreEqual(container.Children[0].Children[0].Data, "name1"); Assert.IsNull(container.Children[0].Children[0].Children); Assert.AreEqual(container.Children[0].Children[1].Data, "age1"); Assert.IsNull(container.Children[0].Children[1].Children); Assert.AreEqual(container.Children[1].Data, "id"); Assert.AreEqual(container.Children[1].Children[0].Data, "name2"); Assert.IsNull(container.Children[1].Children[0].Children); Assert.AreEqual(container.Children[1].Children[1].Data, "age2"); Assert.AreEqual(container.Children[1].Children[1].Children[0].Data, "hello"); Assert.IsNull(container.Children[1].Children[1].Children[0].Children); Assert.AreEqual(container.Children[1].Children[1].Children[1].Data, "bye"); Assert.IsNull(container.Children[1].Children[1].Children[0].Children); Assert.AreEqual(container.Children[2].Data, "you"); Assert.AreEqual(container.Children[2].Children[0].Data, "name3"); Assert.IsNull(container.Children[2].Children[0].Children); Assert.AreEqual(container.Children[2].Children[1].Data, "age3"); Assert.IsNull(container.Children[2].Children[1].Children); }
public void TestMismatchedParents() { var container = StringContainer.Get(")("); Assert.AreEqual(container.Data, string.Empty); Assert.AreEqual(container.Children[0].Data, string.Empty); }
public void TestEmptyParens() { var container = StringContainer.Get("()"); Assert.AreEqual(container.Data, string.Empty); Assert.AreEqual(container.Children[0].Data, string.Empty); }
public void TestEmptyString() { var container = StringContainer.Get(string.Empty); Assert.AreEqual(container.Data, string.Empty); Assert.IsNull(container.Children); }
public void TestOneChildWithGrandson() { var container = StringContainer.Get("(id(name))"); Assert.AreEqual(container.Children[0].Data, "id"); Assert.AreEqual(container.Children[0].Children[0].Data, "name"); Assert.IsNull(container.Children[0].Children[0].Children); }
static void Main(string[] args) { string str = "(id,created,employee(id,firstname,employeeType(id), lastname),location(id,lat,long),something,anything)"; var container = StringContainer.Get(str); container.Sort(); System.Console.WriteLine(container.ToDeepString()); System.Console.ReadKey(); }
public void TestTwoChildren() { var container = StringContainer.Get("(id,data)"); Assert.AreEqual(container.Children[0].Data, "id"); Assert.IsNull(container.Children[0].Children); Assert.AreEqual(container.Children[1].Data, "data"); Assert.IsNull(container.Children[1].Children); }
public void TestThirdChildWithGrandson() { var container = StringContainer.Get("(data,id,you(name))"); Assert.AreEqual(container.Children[0].Data, "data"); Assert.IsNull(container.Children[0].Children); Assert.AreEqual(container.Children[1].Data, "id"); Assert.IsNull(container.Children[1].Children); Assert.AreEqual(container.Children[2].Data, "you"); Assert.AreEqual(container.Children[2].Children[0].Data, "name"); Assert.IsNull(container.Children[2].Children[0].Children); }
public void TestMiddleChildWithGrandchildren() { var container = StringContainer.Get("(data,id(name,age),you(name,age))"); Assert.AreEqual(container.Children[0].Data, "data"); Assert.IsNull(container.Children[0].Children); Assert.AreEqual(container.Children[1].Data, "id"); Assert.AreEqual(container.Children[1].Children[0].Data, "name"); Assert.IsNull(container.Children[1].Children[0].Children); Assert.AreEqual(container.Children[1].Children[1].Data, "age"); Assert.IsNull(container.Children[1].Children[1].Children); Assert.AreEqual(container.Children[2].Data, "you"); Assert.AreEqual(container.Children[2].Children[0].Data, "name"); Assert.IsNull(container.Children[2].Children[0].Children); Assert.AreEqual(container.Children[2].Children[1].Data, "age"); Assert.IsNull(container.Children[2].Children[1].Children); }
public void TestTrailingWords() { var container = StringContainer.Get("(data(name1,age1),id(name2,age2),you,name3,age3)"); Assert.AreEqual(container.Children[0].Data, "data"); Assert.AreEqual(container.Children[0].Children[0].Data, "name1"); Assert.IsNull(container.Children[0].Children[0].Children); Assert.AreEqual(container.Children[0].Children[1].Data, "age1"); Assert.IsNull(container.Children[0].Children[1].Children); Assert.AreEqual(container.Children[1].Data, "id"); Assert.AreEqual(container.Children[1].Children[0].Data, "name2"); Assert.IsNull(container.Children[1].Children[0].Children); Assert.AreEqual(container.Children[1].Children[1].Data, "age2"); Assert.IsNull(container.Children[1].Children[1].Children); Assert.AreEqual(container.Children[2].Data, "you"); Assert.AreEqual(container.Children[3].Data, "name3"); Assert.IsNull(container.Children[3].Children); Assert.AreEqual(container.Children[4].Data, "age3"); Assert.IsNull(container.Children[4].Children); }
public void TestSortedTestString() { string str = "(id,created,employee(id,firstname,employeeType(id),lastname),location(id,lat,long),something,anything)"; var container = StringContainer.Get(str); container.Sort(); Assert.AreEqual(container.Children[0].Data, "anything"); Assert.IsNull(container.Children[0].Children); Assert.AreEqual(container.Children[1].Data, "created"); Assert.IsNull(container.Children[1].Children); Assert.AreEqual(container.Children[2].Data, "employee"); Assert.AreEqual(container.Children[2].Children[0].Data, "employeeType"); Assert.AreEqual(container.Children[2].Children[0].Children[0].Data, "id"); Assert.IsNull(container.Children[2].Children[0].Children[0].Children); Assert.AreEqual(container.Children[2].Children[1].Data, "firstname"); Assert.IsNull(container.Children[2].Children[1].Children); Assert.AreEqual(container.Children[2].Children[2].Data, "id"); Assert.IsNull(container.Children[2].Children[2].Children); Assert.AreEqual(container.Children[2].Children[3].Data, "lastname"); Assert.IsNull(container.Children[2].Children[3].Children); Assert.AreEqual(container.Children[3].Data, "id"); Assert.IsNull(container.Children[3].Children); Assert.AreEqual(container.Children[4].Data, "location"); Assert.AreEqual(container.Children[4].Children[0].Data, "id"); Assert.IsNull(container.Children[4].Children[0].Children); Assert.AreEqual(container.Children[4].Children[1].Data, "lat"); Assert.IsNull(container.Children[4].Children[1].Children); Assert.AreEqual(container.Children[4].Children[2].Data, "long"); Assert.IsNull(container.Children[4].Children[2].Children); Assert.AreEqual(container.Children[5].Data, "something"); Assert.IsNull(container.Children[5].Children); }
public void TestMismatchedParentsTooManyClosesNested() { var container = StringContainer.Get("(word(otherWord(Hello,Bye(O)))ther))"); }
public void TestMismatchedParentsTooManyCloses() { var container = StringContainer.Get("(word(otherWord)))"); }