public void LoginSuccessfulTest() { var companyVm = viewModelFactory.GetViewModel <CompanyViewModel>(); companyVm.Model = TestGlobals.Company; var authenticationGroupVm = viewModelFactory.GetViewModel <AuthenticationGroupViewModel>(); authenticationGroupVm.Model = TestGlobals.AuthenticationGroup; var vm = viewModelFactory.GetViewModel <LocalUserViewModel>(); vm.CompanyInfo = new TestCompanyInfo(); var user = DesignTimeHelper.GetRegisteredUser(); mockRoomService.Setup(rs => rs.Login(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <OperationCallback <LoginSession> >())) .Callback((string companyTag, string authenticationGroupTag, string userTag, string password, OperationCallback <LoginSession> callback) => callback(null, new LoginSession() { LoginSessionId = loginSessionId, UserId = Guid.NewGuid() })); mockRoomService.Setup(rs => rs.GetAuthenticatedUser(It.IsAny <LoginSession>(), It.IsAny <OperationCallback <User> >())) .Callback((LoginSession loginSession, OperationCallback <User> callback) => callback(null, user)); vm.Login("smithkl42", "password", ex => { Assert.AreEqual("smithkl42", vm.UserTag); Assert.AreEqual("password", vm.Password); Assert.AreEqual(loginSessionId, vm.LoginSession.LoginSessionId); Assert.AreEqual(user, vm.Model); }); }
public void UserChangesAndWorkspaceItemsChange() { // Arrange var vm = viewModelFactory.GetViewModel <LocalUserViewModel>(); var workspaceVm = viewModelFactory.GetViewModel <WorkspaceViewModel>(); var user1 = DesignTimeHelper.GetGuestUser(); var user2 = DesignTimeHelper.GetRegisteredUser(); Assert.IsNull(vm.UserSharedFileCollectionVm); vm.Model = user1; Assert.IsNotNull(vm.UserSharedFileCollectionVm); var sharedFileVms = vm.UserSharedFileCollectionVm.ViewModels; workspaceVm.WorkspaceItems.RegisterObservedCollection(sharedFileVms); foreach (var sharedFile in user1.SharedFiles) { Assert.IsTrue(vm.UserSharedFileCollectionVm.ViewModels.Any(sfvm => sfvm.Model == sharedFile)); Assert.IsTrue(workspaceVm.WorkspaceItems.Any(item => (item as SharedFileViewModel).Model == sharedFile)); } // Act vm.Model = user2; // Assert Assert.AreEqual(sharedFileVms, vm.UserSharedFileCollectionVm.ViewModels); foreach (var sharedFile in user2.SharedFiles) { Assert.IsTrue(vm.UserSharedFileCollectionVm.ViewModels.Any(sfvm => sfvm.Model == sharedFile)); Assert.IsTrue(workspaceVm.WorkspaceItems.Any(item => (item as SharedFileViewModel).Model == sharedFile)); } }
public void SampleUserSharedFileCollectionViewModelTest() { var sampleVm = new SampleUserSharedFileCollectionViewModel(); Assert.AreEqual(DesignTimeHelper.GetRegisteredUser(), sampleVm.UserVm.Model); Assert.AreEqual(DesignTimeHelper.GetRegisteredUser().UserId, sampleVm.UserId); }
public void SampleSharedFileViewModelTest() { var sampleVm = new SampleSharedFileViewModel(); Assert.AreEqual(sampleVm.OwnerUserId, DesignTimeHelper.GetRegisteredUser().UserId); Assert.AreEqual(sampleVm.OwnerUserName, DesignTimeHelper.GetRegisteredUser().UserName); }
public virtual void TestInit() { DesignTimeHelper.Reset(); mockMessageService = GetMockMessageService(); messageService = mockMessageService.Object; viewLocator = new ViewLocator(); mockRoomService = GetMockRoomService(); roomService = mockRoomService.Object; viewModelFactory = new ViewModelFactory(roomService, messageService, viewLocator); user = DesignTimeHelper.GetRegisteredUser(); room = DesignTimeHelper.GetRoom(); guestUser = DesignTimeHelper.GetGuestUser(); // Wait to kick off any of the actual tests until the basic test initialization has completed. EnqueueConditional(() => TestGlobals.Initialized); EnqueueTestComplete(); }
public void UserChangesAndClosedWorkspaceItemsChange() { // Arrange var localUserVm = viewModelFactory.GetViewModel <LocalUserViewModel>(); var workspaceVm = viewModelFactory.GetViewModel <WorkspaceViewModel>(); var user1 = DesignTimeHelper.GetGuestUser(); var user2 = DesignTimeHelper.GetRegisteredUser(); var wb1 = new Data.RoomService.Whiteboard() { WhiteboardId = Guid.NewGuid(), User = user2, IsClosed = true }; var wbVm1 = viewModelFactory.GetViewModel <WhiteboardViewModel>(w => w.WorkspaceItemId == wb1.WhiteboardId); wbVm1.Model = wb1; var wb2 = new Data.RoomService.Whiteboard() { WhiteboardId = Guid.NewGuid(), User = user2, IsClosed = true }; var wbVm2 = viewModelFactory.GetViewModel <WhiteboardViewModel>(w => w.WorkspaceItemId == wb2.WhiteboardId); wbVm2.Model = wb2; workspaceVm.ClosedWorkspaceItems.Triggers.Add(localUserVm); workspaceVm.WorkspaceItems.Add(wbVm1); workspaceVm.WorkspaceItems.Add(wbVm2); localUserVm.Model = user1; Assert.IsTrue(wbVm1.IsReady && !wbVm1.IsShareAvailable && !wbVm1.IsShared); Assert.IsTrue(wbVm2.IsReady && !wbVm2.IsShareAvailable && !wbVm2.IsShared); // The whiteboards shouldn't initially show up in the closed workspace items because // they aren't owned by the current local user. Assert.IsFalse(workspaceVm.ClosedWorkspaceItems.Contains(wbVm1)); Assert.IsFalse(workspaceVm.ClosedWorkspaceItems.Contains(wbVm2)); // Act localUserVm.Model = user2; // Assert // The whiteboards should now show up in the closed workspace items because // they're owned by the new local user. Assert.IsTrue(wbVm1.IsReady && wbVm1.IsShareAvailable && !wbVm1.IsShared); Assert.IsTrue(wbVm2.IsReady && wbVm2.IsShareAvailable && !wbVm2.IsShared); Assert.IsTrue(workspaceVm.ClosedWorkspaceItems.Contains(wbVm1)); Assert.IsTrue(workspaceVm.ClosedWorkspaceItems.Contains(wbVm2)); }