public void RemoveOtherSPluralSuffix_EndingInSAndContainingAVowelRightBeforeAndEarlierInWord_DeletesTheS()
        {
            const string word    = "kiwis";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1ARemoveOtherSPluralSuffixes(word);

            // Assert
            Assert.AreEqual("kiwi", actual);
        }
        public void RemoveOtherSPluralSuffix_WithShortWordEndingInIed_ReplaceWithIe()
        {
            const string word    = "tied";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1ARemoveOtherSPluralSuffixes(word);

            // Assert
            Assert.AreEqual("tie", actual);
        }
        public void RemoveOtherSPluralSuffix_WithWordEndingInSses_ReplaceWithSs()
        {
            const string word    = "assesses";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1ARemoveOtherSPluralSuffixes(word);

            // Assert
            Assert.AreEqual("assess", actual);
        }
Ejemplo n.º 4
0
        public void RemoveSPluralSuffix_WithWordEndingInApostrophe_RemovesSuffix()
        {
            const string word    = "holy'";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step0RemoveSPluralSuffix(word);

            // Assert
            Assert.AreEqual("holy", actual);
        }
        public void RemoveOtherSPluralSuffix_EndingInUs_LeavesWordAlone()
        {
            const string word    = "consensus";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1ARemoveOtherSPluralSuffixes(word);

            // Assert
            Assert.AreEqual("consensus", actual);
        }
Ejemplo n.º 6
0
        public void MarkVowelsAsConsonants_WithDoubledY_MarksFirstButNotSecondYAsConsonant()
        {
            const string word    = "sayyid";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.MarkYsAsConsonants(word);

            // Assert
            Assert.AreEqual("saYyid", actual);
        }
Ejemplo n.º 7
0
        public void MarkVowelsAsConsonants_WithInitialY_MarksYAsConsonant()
        {
            const string word    = "youth";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.MarkYsAsConsonants(word);

            // Assert
            Assert.AreEqual("Youth", actual);
        }
Ejemplo n.º 8
0
        public void MarkVowelsAsConsonants_WithNoVowelsButY_DoesNotMarkAnyYAsConsonant()
        {
            const string word    = "syzygy";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.MarkYsAsConsonants(word);

            // Assert
            Assert.AreEqual("syzygy", actual);
        }
Ejemplo n.º 9
0
        public void ReplaceYSuffix_NotPreceededyConsonant_DoesNotReplaceSuffix()
        {
            const string word    = "say";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1CReplaceSuffixYWithIIfPreceededWithConsonant(word);

            // Assert
            Assert.AreEqual("say", actual);
        }
Ejemplo n.º 10
0
        public void ReplaceYSuffix_PreceededByConsonant_ReplacesSuffixWithI()
        {
            const string word    = "cry";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1CReplaceSuffixYWithIIfPreceededWithConsonant(word);

            // Assert
            Assert.AreEqual("cri", actual);
        }
Ejemplo n.º 11
0
        public void MarkVowelsAsConsonants_WithYBetweenTwoVowels_MarksYAsConsonant()
        {
            const string word    = "boyish";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.MarkYsAsConsonants(word);

            // Assert
            Assert.AreEqual("boYish", actual);
        }
Ejemplo n.º 12
0
        public void RemoveLySuffixes_EndingInIngAndDoubledLetterProceedsThat_RemovesDoubledLetter()
        {
            const string word    = "hopping";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1BRemoveLySuffixes(word, stemmer.GetRegion1(word));

            // Assert
            Assert.AreEqual("hop", actual);
        }
Ejemplo n.º 13
0
        public void RemoveLySuffixes_EndingInEedlyAndInR1_ReplacesSuffixWithEe()
        {
            const string word    = "inbreedly";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1BRemoveLySuffixes(word, stemmer.GetRegion1(word));

            // Assert
            Assert.AreEqual("inbree", actual);
        }
Ejemplo n.º 14
0
        public void RemoveLySuffixes_EndingInInglyAndAtProceedsThat_ReplacesSuffixWithE()
        {
            const string word    = "luxuriated";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1BRemoveLySuffixes(word, stemmer.GetRegion1(word));

            // Assert
            Assert.AreEqual("luxuriate", actual);
        }
Ejemplo n.º 15
0
        public void RemoveLySuffixes_EndingInEdAndDoesNotContainVowel_LeavesWord()
        {
            const string word    = "fred";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1BRemoveLySuffixes(word, stemmer.GetRegion1(word));

            // Assert
            Assert.AreEqual("fred", actual);
        }
Ejemplo n.º 16
0
        public void RemoveLySuffixes_EndingInIngAndIsShortWord_ReplacesSuffixWithE()
        {
            const string word    = "hoping";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.Step1BRemoveLySuffixes(word, stemmer.GetRegion1(word));

            // Assert
            Assert.AreEqual("hope", actual);
        }
Ejemplo n.º 17
0
        public void MarkVowelsAsConsonants_WithVowelOnlyFollowingY_DoesNotMarkYAsConsonant()
        {
            const string word    = "flying";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.MarkYsAsConsonants(word);

            // Assert
            Assert.AreEqual("flying", actual);
        }
Ejemplo n.º 18
0
        public void EndInShortSyllable_TestingRap_IsCountedAsShort()
        {
            // Arrange
            const string word    = "rap";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.EndsInShortSyllable(word);

            // Assert
            Assert.IsTrue(actual);
        }
Ejemplo n.º 19
0
        public void IsShortWord_TestingBeds_IsNotCountedAsShort()
        {
            // Arrange
            const string word    = "beds";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.IsShortWord(word);

            // Assert
            Assert.IsFalse(actual);
        }
Ejemplo n.º 20
0
        public void IsShortWord_TestingShred_IsCountedAsShort()
        {
            // Arrange
            const string word    = "shred";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.IsShortWord(word);

            // Assert
            Assert.IsTrue(actual);
        }
Ejemplo n.º 21
0
        public void GetRegion1_WithWordContainingRegion1AndRegion2_ProvidesCorrectRangeForRegion1()
        {
            // Arrange
            const string word    = "beautiful";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.GetRegion1(word);

            // Assert
            Assert.AreEqual(5, actual);
        }
Ejemplo n.º 22
0
        public void EndInShortSyllable_TestingUproot_IsNotCountedAsShort()
        {
            // Arrange
            const string word    = "uproot";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.EndsInShortSyllable(word);

            // Assert
            Assert.IsFalse(actual);
        }
Ejemplo n.º 23
0
        public void GetRegion2_WithWordContainingNeitherRegion_ProvidesRangeWithLength0()
        {
            // Arrange
            const string word    = "beau";
            var          stemmer = new SnowballPorterStemmer();

            // Act
            var actual = stemmer.GetRegion2(word);

            // Assert
            Assert.AreEqual(0, actual - word.Length);
        }
        public void Stem_WithBatchData_StemsAllWordsCorrectly()
        {
            var stemmer = new SnowballPorterStemmer();

            using (var reader = new StreamReader(@"../Controllers/Search Module/Stemmer/TestStemmer/data.csv"))
            {
                while (!reader.EndOfStream)
                {
                    var    line     = reader.ReadLine();
                    var    values   = line.Split(',');
                    string expected = values[1];
                    var    stemmed  = stemmer.Stem(values[0]).Stemmed;
                    Assert.AreEqual(expected, stemmed);
                }
            }
        }