Beispiel #1
0
        public void GetInterestingWords_NounsInDifferentForm_NounsInDefaultForm()
        {
            var returnedWords =
                WordPreparer.GetInterestingWords(new[] { "инженеры", "коты", "ИнЖеНЕров", "Кота", "о коте" });

            returnedWords.All(x => x == "инженер" || x == "кот").Should().BeTrue();
            returnedWords.Length.Should().Be(5);
        }
 private DetectedGender DetectForParts(IFio petrovich)
 {
     return(new DetectedGender
     {
         FirstName = _firstNameDet.Determinate(WordPreparer.GetChunks(petrovich.FirstName?.Trim())),
         LastName = _lastNameDet.Determinate(WordPreparer.GetChunks(petrovich.LastName?.Trim())),
         MiddleName = _middleNameDet.Determinate(WordPreparer.GetChunks(petrovich.MiddleName?.Trim()))
     });
 }
Beispiel #3
0
        public void GetWordsStatistic_DifferentWords_CorrectStatistic()
        {
            var words =
                ("даже плохой программный код может работать однако если код не является чистым " +
                 "это всегда будет мешать развитию проекта и компании разработчика " +
                 "отнимая значительные ресурсы на его поддержку и укрощение")
                .Split(' ');
            var statistic = WordPreparer.GetWordsStatistic(words);

            statistic.Count(x => x.Word == "код").Should().Be(1);
            statistic.First(x => x.Word == "код").Count.Should().Be(2);
        }
        private string InflectTo(string name, Case @case, RuleSet ruleSet)
        {
            var nameChunks = WordPreparer.GetChunks(name);

            return(string.Join("-", nameChunks.Select((chunk, index) =>
            {
                bool firstWord = index == 0 && nameChunks.Count > 1;
                return FindAndApply(chunk, @case, ruleSet, new Dictionary <string, bool> {
                    { "first_word", firstWord }
                });
            })));
        }
Beispiel #5
0
 public void GetWordsStatistic_Null_ThrowsException()
 {
     new Action(() => WordPreparer.GetWordsStatistic(null)).Should().Throw <NullReferenceException>();
 }
Beispiel #6
0
 public void GetWordsStatistic_EmptyArray_EmptyList()
 {
     WordPreparer.GetWordsStatistic(new string[0]).Count.Should().Be(0);
 }
Beispiel #7
0
 public void GetInterestingWords_OneThousandWords_WorkFast()
 {
     WordPreparer.GetInterestingWords(Enumerable.Range(0, 1000).Select(x => "пакетов").ToArray());
 }
Beispiel #8
0
 public void GetInterestingWords_BoringWords_EmptyArray()
 {
     WordPreparer.GetInterestingWords("а но ты я оно нет да это то для когда и".Split(' ')).Length.Should()
     .Be(0);
 }