public void CanBeRussian_Test(string msg, bool res) { var chatMessage = new ChatMessage { Message = msg }; Assert.AreEqual(res, chatMessage.CanBeRussian()); }
public void OnChatMessage(ChatMessage chatMessage) { this.Do(() => { if (Channels.Contains(chatMessage.Channel)) { if (Settings.UseBlocking) { if (chatMessage.HasStopWord(_chatsSettings.StopWords)) { return; } if (_chatsSettings.BlackList.Any(s => s.Equals(chatMessage.Sender, StringComparison.InvariantCultureIgnoreCase))) { return; } } if (Settings.RussianOnly) { if (!chatMessage.CanBeRussian()) { return; } } // костыль. непонятно, почему двоятся сообщения (в источнике всё норм) var last = _messages.OrderBy(m => m.Time).LastOrDefault(); if (last != null && last.AreEquals(chatMessage)) { return; } _messages.Add(chatMessage); _itemsControl.ScrollIntoView(chatMessage); } }); }