public void TestNodeGroup() { NodeGroup group = null; Function n = null; try { group = NodeGroup.EnterNewGroup("test"); n = CNTKLib.InputVariable(new int[] { 2 }, DataType.Float); NodeGroup.Current.Add(n); n = CNTKLib.ReLU(n); NodeGroup.Current.Add(n); } finally { NodeGroup.LeaveGroup(); } var g = NodeGroup.Groups.ToArray(); Assert.AreEqual(1, g.Length); Assert.AreEqual(group, g[0]); var nodes = g[0].Nodes.ToArray(); Assert.AreEqual(2, nodes.Length); Assert.AreEqual(n.Inputs[0].Uid, nodes[0].Uid); Assert.AreEqual(n.RootFunction.Uid, nodes[1].Uid); var f = NodeGroup.FindGroup(n.RootFunction.Uid); Assert.AreEqual("test", f.Name); }