SIL.FieldWorks.Common.Controls.TriStateTreeViewTests.GetNodesOfTypeWithState C# (CSharp) Method

GetNodesOfTypeWithState() private method

private GetNodesOfTypeWithState ( ) : void
return void
		public void GetNodesOfTypeWithState()
		{
			m_treeView.Nodes.Clear();

			DummyTreeNode1 dNode = new DummyTreeNode1("d");
			DummyTreeNode2 c2Node = new DummyTreeNode2("c2");
			DummyTreeNode2 c1Node = new DummyTreeNode2("c1", new TreeNode[] { dNode });
			m_bNode = new TreeNode("b", new TreeNode[] { c1Node, c2Node });
			m_aNode = new TreeNode("a", new TreeNode[] { m_bNode });
			m_treeView.Nodes.Add(m_aNode);

			m_treeView.SetChecked(c1Node, TriStateTreeView.CheckState.Checked);

			// Get Checked nodes of type DummyTreeNode1.
			TreeNode[] list = m_treeView.GetNodesOfTypeWithState(typeof(DummyTreeNode1),
				TriStateTreeView.CheckState.Checked);

			Assert.AreEqual(1, list.Length);
			Assert.AreEqual(list[0], dNode);
			Assert.IsNotNull(list[0] as DummyTreeNode1);

			// Get Unchecked nodes of type DummyTreeNode2.
			list = m_treeView.GetNodesOfTypeWithState(typeof(DummyTreeNode2),
				TriStateTreeView.CheckState.Unchecked);

			Assert.AreEqual(1, list.Length);
			Assert.AreEqual(list[0], c2Node);
			Assert.IsNotNull(list[0] as DummyTreeNode2);

			// Get nodes of type DummyTreeNode2 regardless of check state (Unchecked, Checked or Greyed).
			list = m_treeView.GetNodesOfTypeWithState(typeof(DummyTreeNode2),
				TriStateTreeView.CheckState.Unchecked |
				TriStateTreeView.CheckState.Checked);

			Assert.AreEqual(2, list.Length);
			Assert.AreEqual(list[0], c1Node);
			Assert.AreEqual(list[1], c2Node);
			Assert.IsNotNull(list[0] as DummyTreeNode2);
			Assert.IsNotNull(list[1] as DummyTreeNode2);

			// Get nodes of type TreeNode regardless of check state (Unchecked, Checked or Greyed).
			list = m_treeView.GetNodesOfTypeWithState(typeof(TreeNode),
				TriStateTreeView.CheckState.GreyChecked);

			Assert.AreEqual(2, list.Length);
			Assert.AreEqual(list[0], m_aNode);
			Assert.AreEqual(list[1], m_bNode);
			Assert.IsNotNull(list[0] as TreeNode);
			Assert.IsNotNull(list[1] as TreeNode);
		}