public void TestGetVisibleNodesFromLeft() { TreeNode <int> root_1 = new TreeNode <int>(8); root_1.LeftNode = new TreeNode <int>(3); root_1.RightNode = new TreeNode <int>(10); root_1.LeftNode.LeftNode = new TreeNode <int>(1); root_1.LeftNode.RightNode = new TreeNode <int>(6); root_1.RightNode.RightNode = new TreeNode <int>(14); root_1.LeftNode.RightNode.LeftNode = new TreeNode <int>(4); root_1.LeftNode.RightNode.RightNode = new TreeNode <int>(7); root_1.RightNode.RightNode.LeftNode = new TreeNode <int>(13); int expected_1 = 4; int output_1 = TreesAndGraphs.GetVisibleNodesFromLeft(root_1); Assert.AreEqual(expected_1, output_1); TreeNode <int> root_2 = new TreeNode <int>(10); root_2.LeftNode = new TreeNode <int>(8); root_2.RightNode = new TreeNode <int>(15); root_2.LeftNode.LeftNode = new TreeNode <int>(4); root_2.LeftNode.LeftNode.RightNode = new TreeNode <int>(5); root_2.LeftNode.LeftNode.RightNode.RightNode = new TreeNode <int>(6); root_2.RightNode.LeftNode = new TreeNode <int>(14); root_2.RightNode.RightNode = new TreeNode <int>(16); int expected_2 = 5; int output_2 = TreesAndGraphs.GetVisibleNodesFromLeft(root_2); Assert.AreEqual(expected_2, output_2); }