public void GetEnumerator()
{
var trie = new Trie<bool>();
trie.Add("ABC", false);
trie.Add("AB", false);
trie.Add("ADE", false);
trie.Add("ABCDE", false);
var result = trie.Select(kvp => kvp.Key).OrderBy(w => w).ToArray();
var resultEnumerator =
trie.OfType<KeyValuePair<string, bool>>().Select(k => k.Key).OrderBy(w => w).ToArray();
CollectionAssert.AreEqual(new[] { "AB", "ABC", "ABCDE", "ADE" }, result);
CollectionAssert.AreEqual(new[] { "AB", "ABC", "ABCDE", "ADE" }, resultEnumerator);
}