public BoringWordsSelector(WordHandlerSettings settings) { Settings = settings; table.RowCount = settings.SpeechPartsStatuses.Count; var acceptButton = new Button { Text = "OK", DialogResult = DialogResult.OK }; var header = new Label { Text = "What parts of speech will be in the cloud?", Font = new Font(SystemFonts.CaptionFont.FontFamily, 9, FontStyle.Bold), AutoSize = true }; SpeechPartsList = ConvertToSpeechList(settings.SpeechPartsStatuses); Controls.Add(header); FillSpeechPartsList(SpeechPartsList); table.Controls.Add(acceptButton, 0, SpeechPartsList.Length + 1); CenterElements(header, acceptButton); Controls.Add(table); AcceptButton = acceptButton; }
public void NormilizeAndExcludeBoringWords_AllWordsBoring_ReturnsAllInputWords() { var sentence = "Утром в лесу запели два звонких соловья и защебетали воробьи, чуть-чуть умолкая.".Split(" "); var wordHandlerSettings = new WordHandlerSettings { SpeechPartsStatuses = defaultSpeechPartsStatuses .ToDictionary(pair => pair.Key, pair => false) }; new WordHandler(wordHandlerSettings) .NormalizeAndExcludeBoringWords(sentence) .Should() .BeEquivalentTo(); }
public void NormilizeAndExcludeBoringWords_BoringWordsIsNounAndConjunctions_ReturnsOnlyAdjective() { var settings = new WordHandlerSettings { SpeechPartsStatuses = new Dictionary <string, bool> { ["Прилагательное"] = true, ["Существительное"] = false, ["Союз"] = false } }; var words = "Красивое и сочное яблоко".Split(" "); var interestingWords = new WordHandler(settings).NormalizeAndExcludeBoringWords(words).ToArray(); interestingWords.Should().Contain("красивый", "сочный"); interestingWords.Should().NotContain("и", "яблоко"); }
public void NormilizeAndExcludeBoringWords_AllWordsInteresting_ReturnsAllInputWords() { var sentence = "Утром в лесу запели два звонких соловья и защебетали воробьи, чуть-чуть умолкая.".Split(" "); var wordHandlerSettings = new WordHandlerSettings { SpeechPartsStatuses = defaultSpeechPartsStatuses }; new WordHandler(wordHandlerSettings) .NormalizeAndExcludeBoringWords(sentence) .Should() .BeEquivalentTo( "утро", "лес", "запевать", "два", "звонкий", "соловей", "защебетать", "воробей", "умолкать" ); }
public WordHandler(WordHandlerSettings wordHandlerSettings) => WordHandlerSettings = wordHandlerSettings;