public void TestBranchIteration() { var a = new EllipseShape (); var b = new RectangleShape (); var c = new LineShape (0.0, 0.0, 32.0, 32.0); var look = new Look (SolidBrush.Red, SolidPen.Black); var op = new ShapeTree (look, a); op.AddChild (look, b).AddChild (look, c); // Iterate through each member of the branch. var list = new List<ShapeBase> (); foreach (var item in op) { list.Add (item); } Assert.True (list[0] == b); Assert.True (list[1] == c); }