コード例 #1
0
        private static IWordDictionary GetLoadedDictionary()
        {
            var builder = new TrieTreeBuilder();

            builder.LoadWordsFromFile(@"C:\temp\wordlist.txt");
            return(builder.ToTree());
        }
コード例 #2
0
        public void AnInstanceCanOnlyBeLoadedOnce_ListWords()
        {
            var builder = new TrieTreeBuilder();

            using (Stream stream = ToStream("aa"))
                builder.LoadWordListFromStream(stream);
            using (Stream stream = ToStream("bb"))
                builder.LoadWordsFromStream(stream);
        }
コード例 #3
0
        public void LoadTimeIncreasesAfterLoadWords()
        {
            var builder = new TrieTreeBuilder();

            using (Stream stream = ToStream("aa"))
                builder.LoadWordsFromStream(stream);

            Assert.IsTrue(builder.LoadTime > TimeSpan.Zero);
        }
コード例 #4
0
        public void LoadStreamWithLineBreaks(string lines)
        {
            var builder = new TrieTreeBuilder();

            using (Stream stream = ToStream(lines))
                builder.LoadWordListFromStream(stream);
            var tree = builder.ToTree();

            Assert.AreEqual(2, tree.Count, "count");
            Assert.IsTrue(tree.IsWord("aa"), "aa");
            Assert.IsTrue(tree.IsWord("bb"), "bb");
        }
コード例 #5
0
        public void LoadStreamByLetter()
        {
            // we don't need to test various word separators (e.g.,
            // LoadStreamWithLineBreaks does) because when loading
            // by letter, the TrieTree class handles that (not
            // TrieTreeBuilder)
            var builder = new TrieTreeBuilder();

            using (Stream stream = ToStream("aa bb"))
                builder.LoadWordsFromStream(stream);
            var tree = builder.ToTree();

            Assert.AreEqual(2, tree.Count, "count");
            Assert.IsTrue(tree.IsWord("aa"), "aa");
            Assert.IsTrue(tree.IsWord("bb"), "bb");
        }
コード例 #6
0
        private void LoadFromX(Action <TrieTreeBuilder, string> loadAction)
        {
            string file = Path.GetTempFileName();

            File.WriteAllLines(file, new[] { "aa", "bb" });

            var builder = new TrieTreeBuilder();

            loadAction(builder, file);
            var tree = builder.ToTree();

            Assert.AreEqual(2, tree.Count, "count");
            Assert.IsTrue(tree.IsWord("aa"), "aa");
            Assert.IsTrue(tree.IsWord("bb"), "bb");

            File.Delete(file);
        }