예제 #1
0
        public void Lookup_SingleEdit_IsRejected(string word, string modifiedWord)
        {
            const uint editDistance = 0u;

            using var dawg = DawgHelper.Create(word);

            var lookup = dawg.Lookup(modifiedWord, editDistance).ToList();

            Assert.Empty(lookup);
        }
예제 #2
0
        public void Lookup_SingleSubstitution_IsAccepted(string word, string modifiedWord)
        {
            const uint editDistance = 1u;

            using var dawg = DawgHelper.Create(word);

            var lookup = dawg.Lookup(modifiedWord, editDistance).ToList();

            Assert.Single(lookup);
            Assert.Equal(word, lookup[0].Term);
        }
예제 #3
0
        // TODO: Get the proper definitions for the statement below.
        // This isn't full Damerau-Levensthein, it's the optimal string alignment thing instead.
        public void Lookup_InterruptedTransposition_IsNotAccepted(string word, string modifiedWord)
        {
            // Insertion between the transposed characters plus the transposition itself.
            const uint editDistance = 2u;

            using var dawg = DawgHelper.Create(word);

            var lookup = dawg.Lookup(modifiedWord, editDistance).ToList();

            Assert.Empty(lookup);
        }