Пример #1
0
        public void empty_string_has_no_parts()
        {
            var text = string.Empty;

            var results = GeneralTextParser.SplitWordParts(text);

            results.Should().BeEmpty();
        }
Пример #2
0
        public void single_char_text_has_single_part()
        {
            var text = "a";

            var results = GeneralTextParser.SplitWordParts(text);

            results.Should().ContainSingle()
            .Subject.Text.Should().Be(text);
        }
Пример #3
0
        public void english_contractions_are_split_correctly()
        {
            var given    = "you'dn't've a’n't I'da It’s";
            var expected = given.Split(' ');

            var actual      = GeneralTextParser.SplitWordParts(given);
            var actualWords = actual.Where(p => p.IsWord).Select(p => p.Text);

            actualWords.Should().BeEquivalentTo(expected);
        }
Пример #4
0
        public void standard_sentences_extracts_words(string expectedText, int offset)
        {
            var sentenceText = "The quick brown fox jumps over the lazy dog.";

            var results = GeneralTextParser.SplitWordParts(sentenceText);

            var part = results.Should().ContainSingle(x => x.Text == expectedText).Subject;

            part.Start.Should().Be(offset);
            part.IsWord.Should().BeTrue();
        }
Пример #5
0
        public void hyphenated_word_is_a_whole_word()
        {
            var sentenceText = "The quick-brown fox jumps-over the lazy dog.";

            var results = GeneralTextParser.SplitWordParts(sentenceText);

            var firstResult = results.Should().ContainSingle(x => x.Text == "quick-brown").Subject;

            firstResult.Start.Should().Be(4);
            firstResult.IsWord.Should().BeTrue();

            var secondResult = results.Should().ContainSingle(x => x.Text == "jumps-over").Subject;

            secondResult.Start.Should().Be(20);
            secondResult.IsWord.Should().BeTrue();
        }