public void ChatMessageTest_Constructor_NullParams() { var msg = new ChatMessage(new DateTime(), null, null, null); Assert.AreEqual(msg.Speaker, ""); Assert.AreEqual(msg.Text, ""); Assert.AreEqual(msg.MessageTimeStamp, new DateTime()); }
public void ChatMessageTest_Constructor_Default() { var msg = new ChatMessage(); Assert.AreEqual(msg.Speaker, ""); Assert.AreEqual(msg.Text, ""); Assert.AreEqual(msg.MessageTimeStamp, new DateTime()); }
public void CommLayerTest_Constructor_ValidParams() { // Create objects var mockServer = new Mock<IServerMock>(); var commLayer = new CommLayerMock(mockServer.Object); // Subscribe to CommHandler bool raised = false; commLayer.CommHandler += delegate { raised = true; }; // Raise MessageSent event in Server var msg = new ChatMessage(new DateTime(2012, 12, 18), "Llamautomatic", "This is a test message", "all"); mockServer.Raise(m => m.MessageSent += null, new ChatEventArgs(msg)); // Check if CommHandler was successfully raised in response Assert.IsTrue(raised); }
public void ChatMessageTest_ToString() { var msg = new ChatMessage(new DateTime(2012, 12, 11, 10, 9, 8), "TestSpeaker", "This is a test string", "all"); Assert.AreEqual(msg.ToString(), "[12/11/2012 10:09:08 AM] [all] TestSpeaker: This is a test string"); }
private void RConnPacketHandler(Packet args) { if (args.IsRequest) { var formattedPacket = RecognizedPacket.FormatRequestPacket(args); if (MessageEvents.ContainsKey(args.FirstWord) && MessageEvents[args.FirstWord] != null) { MessageEvents[args.FirstWord](this, formattedPacket); } } else if(args.IsResponse && RequestCallbacks.ContainsKey(args.SequenceNumber)) { Packet request = RequestPackets[args.SequenceNumber]; RequestCallbacks[args.SequenceNumber](this, RecognizedPacket.FormatResponsePacket(request, args)); } //Version .1 we only want player.onChat, admin.say, and admin.yell if (OnChat.IsOnChat(args)) { var chat = new OnChat(args); var message = new ChatMessage { MessageTimeStamp = DateTime.UtcNow, Text = chat.Text, Speaker = chat.SoldierName, MessageType = chat.TargetPlayers.ToString() }; var chatArgs = new ChatEventArgs(message); CommHandler(this, chatArgs); } }
/// <summary> /// Enqueues a message into both Table Store and the current cached queue /// </summary> /// <param name="msg"></param> private void EnqueueMessage(ChatMessage msg) { try { var insertOp = TableOperation.Insert(msg); MessageTable.Execute(insertOp); MessageQueue.Enqueue(msg); if (MessageQueue.Count > 100) { MessageQueue.Dequeue(); } } catch (Exception e) { Log(System.Reflection.MethodBase.GetCurrentMethod().Name, e.Message); } }
/// <summary> /// Constructs a new ChatEventArgs object with a predefined ChatMessage /// </summary> /// <param name="msg">ChatMessage to pass along</param> public ChatEventArgs(ChatMessage msg) { ServerMessage = msg; }