public void CheckIfSuffixIsContained() { var suffixTree = new SuffixTree(); var words = new string[] { "One", "one", "oNe", "two", "hello", "test", "here", "there", "?!??!?!?!?", "VeryVeryVeryLoooooooooooooooooong", ".k[2c3-9024g-u,9weg,ouimwt", "3q2tgwadh", "`+rv`+*1v+vt23*1`vt*1v", "!@#)(*^$!%@_", " bum ", " bam ", " bum bam ", "1", "12", "123", "1234", "12345", "123456" }; for (int i = 0; i < words.Length; i++) { suffixTree.Add(words[i]); for (int j = 0; j < words[i].Length; j++) { if (!suffixTree.ContainsSuffix(words[i].Substring(j, words[i].Length - j))) { Assert.Fail(); } } if (!suffixTree.Contains(words[i])) { Assert.Fail(); } } Assert.IsTrue(suffixTree.Count == words.Length); }