public void ProcessCurrentMessagesOnControllerInitialize() { IChatController chatController = Substitute.For <IChatController>(); chatController.GetEntries().ReturnsForAnyArgs(new List <ChatMessage> { new ChatMessage(ChatMessage.Type.PRIVATE, testProfileModel.userId, "message1"), new ChatMessage(ChatMessage.Type.PRIVATE, testProfileModel.userId, "message2"), new ChatMessage(ChatMessage.Type.PRIVATE, testProfileModel.userId, "message3"), }); InitializeChatWindowController(chatController); Assert.AreEqual(3, controller.view.chatHudView.entries.Count); Assert.AreEqual(ChatMessage.Type.PRIVATE, GetViewEntryModel(0).messageType);; Assert.AreEqual(testProfileModel.userId, GetViewEntryModel(0).senderId); Assert.AreEqual("message1", GetViewEntryModel(0).bodyText); Assert.AreEqual(ChatMessage.Type.PRIVATE, GetViewEntryModel(1).messageType);; Assert.AreEqual(testProfileModel.userId, GetViewEntryModel(1).senderId); Assert.AreEqual("message2", GetViewEntryModel(1).bodyText); Assert.AreEqual(ChatMessage.Type.PRIVATE, GetViewEntryModel(2).messageType);; Assert.AreEqual(testProfileModel.userId, GetViewEntryModel(2).senderId); Assert.AreEqual("message3", GetViewEntryModel(2).bodyText); }
public void ReceivesOneMessageProperly() { IChatController chatController = Substitute.For <IChatController>(); chatController.GetEntries().ReturnsForAnyArgs(new List <ChatMessage>()); InitializeChatWindowController(chatController); ChatMessage chatMessage1 = new ChatMessage(ChatMessage.Type.PRIVATE, testProfileModel.userId, "message1"); ChatMessage chatMessage2 = new ChatMessage(ChatMessage.Type.PRIVATE, testProfileModel.userId, "message2"); ChatMessage chatMessage3 = new ChatMessage(ChatMessage.Type.PRIVATE, testProfileModel.userId, "message3"); chatController.OnAddMessage += Raise.Event <Action <ChatMessage> >(chatMessage1); chatController.OnAddMessage += Raise.Event <Action <ChatMessage> >(chatMessage2); chatController.OnAddMessage += Raise.Event <Action <ChatMessage> >(chatMessage3); Assert.AreEqual(3, controller.view.chatHudView.entries.Count); Assert.AreEqual(ChatMessage.Type.PRIVATE, GetViewEntryModel(0).messageType);; Assert.AreEqual(testProfileModel.userId, GetViewEntryModel(0).senderId); Assert.AreEqual("message1", GetViewEntryModel(0).bodyText); Assert.AreEqual(ChatMessage.Type.PRIVATE, GetViewEntryModel(1).messageType);; Assert.AreEqual(testProfileModel.userId, GetViewEntryModel(1).senderId); Assert.AreEqual("message2", GetViewEntryModel(1).bodyText); Assert.AreEqual(ChatMessage.Type.PRIVATE, GetViewEntryModel(2).messageType);; Assert.AreEqual(testProfileModel.userId, GetViewEntryModel(2).senderId); Assert.AreEqual("message3", GetViewEntryModel(2).bodyText); }
public IEnumerator OpenFriendsHUDOnBackButtonPressed() { IChatController chatController = Substitute.For <IChatController>(); chatController.GetEntries().ReturnsForAnyArgs(new List <ChatMessage>()); InitializeChatWindowController(chatController); // Initialize friends HUD NotificationsController.i.Initialize(new NotificationHUDController()); FriendsHUDController friendsHudController = new FriendsHUDController(); friendsHudController.Initialize(new FriendsController_Mock(), UserProfile.GetOwnUserProfile()); Assert.IsTrue(view != null, "Friends hud view is null?"); Assert.IsTrue(controller != null, "Friends hud controller is null?"); // initialize private chat controller.SetVisibility(true); Assert.AreEqual(true, controller.view.gameObject.activeSelf); controller.view.backButton.onClick.Invoke(); yield return(null); Assert.AreEqual(true, friendsHudController.view.gameObject.activeSelf); friendsHudController.Dispose(); NotificationsController.i.Dispose(); }
public IEnumerator SendChatMessageProperly() { IChatController chatController = Substitute.For <IChatController>(); chatController.GetEntries().ReturnsForAnyArgs(new List <ChatMessage>()); InitializeChatWindowController(chatController); bool messageWasSent = false; System.Action <string, string> messageCallback = (type, msg) => { if (type == "SendChatMessage" && msg.Contains("test message")) { messageWasSent = true; } }; WebInterface.OnMessageFromEngine += messageCallback; controller.resetInputFieldOnSubmit = false; controller.SendChatMessage(new ChatMessage() { body = "test message", recipient = "testUser" }); Assert.IsTrue(messageWasSent); Assert.AreEqual("", controller.view.chatHudView.inputField.text); WebInterface.OnMessageFromEngine -= messageCallback; yield break; }
public void Configure(string newConversationUserId) { if (string.IsNullOrEmpty(newConversationUserId) || newConversationUserId == conversationUserId) { return; } UserProfile newConversationUserProfile = UserProfileController.userProfilesCatalog.Get(newConversationUserId); conversationUserId = newConversationUserId; conversationUserName = newConversationUserProfile.userName; view.ConfigureTitle(conversationUserName); view.ConfigureProfilePicture(newConversationUserProfile.faceSnapshot); view.ConfigureUserId(newConversationUserProfile.userId); view.chatHudView.CleanAllEntries(); var messageEntries = chatController.GetEntries().Where((x) => IsMessageFomCurrentConversation(x)).ToList(); foreach (var v in messageEntries) { OnAddMessage(v); } }
public void CloseOnCloseButtonPressed() { IChatController chatController = Substitute.For <IChatController>(); chatController.GetEntries().ReturnsForAnyArgs(new List <ChatMessage>()); InitializeChatWindowController(chatController); controller.SetVisibility(true); Assert.AreEqual(true, controller.view.gameObject.activeSelf); controller.view.minimizeButton.onClick.Invoke(); Assert.AreEqual(false, controller.view.gameObject.activeSelf); }
public void CloseOnBackButtonPressed() { IChatController chatController = Substitute.For <IChatController>(); chatController.GetEntries().ReturnsForAnyArgs(new List <ChatMessage>()); InitializeChatWindowController(chatController); controller.SetVisibility(true); Assert.AreEqual(true, controller.view.gameObject.activeSelf); bool pressedBack = false; controller.view.OnPressBack += () => { pressedBack = true; }; controller.view.backButton.onClick.Invoke(); Assert.IsTrue(pressedBack); }