public void GetOrCreateWithKnownLetter() { var list = new TrieTree.NodesList(); var node1 = list.GetOrCreateNode('a'); var node2 = list.GetOrCreateNode('a'); Assert.AreSame(node1, node2); Assert.AreEqual(1, list.Count, "Count"); }
public void GetOrCreateTwoLetters() { var list = new TrieTree.NodesList(); var initialCount = list.Count; var node1 = list.GetOrCreateNode('a'); var count1 = list.Count; var node2 = list.GetOrCreateNode('b'); var count2 = list.Count; Assert.IsNotNull(node1); Assert.IsNotNull(node2); Assert.AreNotSame(node1, node2); Assert.AreEqual('a', node1.Letter); Assert.AreEqual('b', node2.Letter); Assert.AreEqual(0, initialCount, "initial count"); Assert.AreEqual(1, count1, "count 1"); Assert.AreEqual(2, count2, "count 2"); }