public void TestHandleSave_ForcedNameChanged() { // Arrange Utils.PlayerDummy player = new Utils.PlayerDummy(); DummyTeam team = new DummyTeam(); team.Name = "Test Team #1"; team.List.Add(player); TeamVM teamVM = new TeamVM { Model = team }; templatesController.ViewModel.ViewModels.Add(teamVM); DummyTeam team2 = team.Clone(); string expectedName = "Test Team #2"; team2.Name = expectedName; // Action App.Current.EventsBroker.Publish(new UpdateEvent <Team> () { Object = team2, Force = true }); // Assert Assert.AreEqual(templatesController.ViewModel.ViewModels.First(x => x.ID == team.ID).Name, expectedName); Assert.IsFalse(templatesController.ViewModel.SaveCommand.CanExecute()); }
public void TemplateVM_SelectionReplaceDifferentList_DoReplace() { int count = 0; string propName = ""; var model = new DummyTeam { Name = "dash", }; model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); var viewModel = new DummyTeamVM { Model = model }; viewModel.Select(viewModel.ViewModels.First()); viewModel.PropertyChanged += (sender, e) => { count++; propName = e.PropertyName; }; viewModel.Selection.Replace(viewModel.ViewModels); Assert.AreEqual(1, count); Assert.AreEqual("Collection_Selection", propName); Assert.AreSame(viewModel.Selection [0], viewModel.ViewModels[0]); Assert.AreSame(viewModel.Selection [1], viewModel.ViewModels[1]); Assert.AreSame(viewModel.Selection [2], viewModel.ViewModels [2]); }
public void Search_TemplateExist_TemplateFound() { //Arrange Utils.PlayerDummy player = new Utils.PlayerDummy(); DummyTeam team = new DummyTeam { Name = "Dummy" }; team.List.Add(player); TeamVM teamVM = new TeamVM { Model = team }; templatesController.ViewModel.ViewModels.Add(teamVM); //Act var evt = new SearchEvent { TextFilter = "Dummy" }; // Action App.Current.EventsBroker.Publish(evt); //Assert Assert.AreEqual(1, templatesController.ViewModel.VisibleViewModels.Count); Assert.AreEqual("Dummy", templatesController.ViewModel.VisibleViewModels.FirstOrDefault().Name); }
public void Search_TemplateThatDoesntExist_VisibleViewModelsEmpty() { //Arrange Utils.PlayerDummy player = new Utils.PlayerDummy(); DummyTeam team = new DummyTeam { Name = "Dummy" }; team.List.Add(player); TeamVM teamVM = new TeamVM { Model = team }; templatesController.ViewModel.ViewModels.Add(teamVM); //Act var evt = new SearchEvent { TextFilter = "This doesn't exist" }; // Action App.Current.EventsBroker.Publish(evt); //Assert Assert.AreEqual(0, templatesController.ViewModel.VisibleViewModels.Count); }
public void TestHandleSave_SaveStatic() { // Arrange Utils.PlayerDummy player = new Utils.PlayerDummy(); DummyTeam team = new DummyTeam(); team.Name = "Test Team #1"; team.List.Add(player); TeamVM teamVM = new TeamVM { Model = team }; templatesController.ViewModel.ViewModels.Add(teamVM); DummyTeam team2 = team.Clone(); string expectedName = "Test Team #2"; team2.Name = expectedName; team2.Static = true; var evt = new UpdateEvent <Team> () { Object = team2, Force = true }; // Action App.Current.EventsBroker.Publish(evt); // Assert mockDialogs.Verify(m => m.QuestionMessage(It.IsAny <string> (), null, It.IsAny <DummyTemplatesController> ()), Times.Once()); }
public void TestHandleSave_NonForcedNameChanged() { // Arrange Utils.PlayerDummy player = new Utils.PlayerDummy(); DummyTeam team = new DummyTeam(); team.Name = "Test Team #1"; team.List.Add(player); TeamVM teamVM = new TeamVM { Model = team }; templatesController.ViewModel.ViewModels.Add(teamVM); DummyTeam team2 = team.Clone(); string expectedName = "Test Team #2"; team2.Name = expectedName; // Action App.Current.EventsBroker.Publish(new UpdateEvent <Team> () { Object = team2, Force = false }); // Assert mockDialogs.Verify(m => m.QuestionMessage(It.IsAny <string> (), null, It.IsAny <DummyTemplatesController> ()), Times.Once()); Assert.AreEqual(templatesController.ViewModel.ViewModels.First(x => x.ID == team.ID).Name, expectedName); Assert.IsFalse(templatesController.ViewModel.SaveCommand.CanExecute()); }
public void TemplateVM_SelectionReplaceWithSamelist_DoNotReplace() { int count = 0; var model = new DummyTeam { Name = "dash", }; model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); var viewModel = new DummyTeamVM { Model = model }; viewModel.Selection.Replace(viewModel.ViewModels); viewModel.PropertyChanged += (sender, e) => count++; viewModel.Selection.Replace(viewModel.ViewModels); Assert.AreEqual(0, count); Assert.AreSame(viewModel.Selection [0], viewModel.ViewModels [0]); Assert.AreSame(viewModel.Selection [1], viewModel.ViewModels [1]); Assert.AreSame(viewModel.Selection [2], viewModel.ViewModels [2]); }
public void TestClone_CloneIgnore_Team() { var team = new DummyTeam(); team.Static = true; team.Color = Color.Black; var team2 = team.Clone(); Assert.AreEqual(team.Static, team2.Static); Assert.AreEqual(team.Color, team2.Color); }
public void TestSelectionInit() { var model = new DummyTeam { Name = "dash", }; var viewModel = new DummyTeamVM { Model = model }; Assert.IsNotNull(viewModel.Selection); }
public void TestClone_IsBindableBase_ChangeCollectionProperty() { // Arrange var team = new DummyTeam(); var clonedTeam = team.Clone(); clonedTeam.IsChanged = false; // Action clonedTeam.List.Add(new Utils.PlayerDummy()); // Assert Assert.IsTrue(clonedTeam.IsChanged); }
public void TestRemoveChild() { var model = new DummyTeam { Name = "dash", }; model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); var viewModel = new DummyTeamVM { Model = model }; model.List.Remove(model.List [0]); Assert.AreEqual(1, viewModel.Count()); }
public void TestModelSync() { var model = new DummyTeam { Name = "dash", }; model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); var viewModel = new DummyTeamVM { Model = model }; Assert.AreEqual(3, viewModel.Count()); Assert.IsInstanceOf(typeof(PlayerVM), viewModel.First()); }
public void TestSelect() { var model = new DummyTeam { Name = "dash", }; var player = new Utils.PlayerDummy(); model.List.Add(player); var viewModel = new DummyTeamVM { Model = model }; viewModel.Select(viewModel.ViewModels.First()); Assert.AreEqual(1, viewModel.Selection.Count); Assert.AreEqual(player, viewModel.Selection.First().Model); }
public void FixtureSetUp() { WibuInit.InitDependencies(); DummyTeam team = new DummyTeam { Name = "Team 1" }; mockGuiToolkit = new Mock <IGUIToolkit> (); mockDialogs = new Mock <IDialogs> (); mockProvider = new Mock <ITeamTemplatesProvider> (); mockGuiToolkit.Setup(x => x.CreateNewTemplate <Team> (It.IsAny <IList <Team> > (), It.IsAny <string> (), It.IsAny <string> (), It.IsAny <string> (), It.IsAny <CreateEvent <Team> > () )).ReturnsAsync(true); mockDialogs.Setup(x => x.OpenFile(It.IsAny <string> (), It.IsAny <string> (), It.IsAny <string> (), It.IsAny <string> (), It.IsAny <string []> ())).Returns("Team.ltt"); mockDialogs.Setup(m => m.QueryMessage(It.IsAny <string> (), null, It.IsAny <string> (), It.IsAny <object> ())).Returns(AsyncHelpers.Return("team_copy")); mockDialogs.Setup(x => x.QuestionMessage(It.IsAny <string> (), It.IsAny <string> (), It.IsAny <object> ())) .ReturnsAsync(true); mockProvider.Setup(x => x.LoadFile(It.IsAny <string> ())).Returns(team); mockProvider.Setup(x => x.Templates).Returns(new List <Team> ()); App.Current.GUIToolkit = mockGuiToolkit.Object; App.Current.Dialogs = mockDialogs.Object; App.Current.TeamTemplatesProvider = mockProvider.Object; mockLimitationService = new Mock <ILicenseLimitationsService> (); countLimitationVM = new CountLimitationVM() { Model = new CountLicenseLimitation { RegisterName = LongoMatchCountLimitedObjects.Team.ToString(), Enabled = true, Maximum = 2 } }; mockLimitationService.Setup(x => x.Get <CountLimitationVM> (It.IsAny <string> ())).Returns(countLimitationVM); App.Current.LicenseLimitationsService = mockLimitationService.Object; controller = new TeamsController(); }
public void Selection_CollectionCleared_SelectionSynced() { var model = new DummyTeam { Name = "dash", }; model.List.Add(new Utils.PlayerDummy()); model.List.Add(new Utils.PlayerDummy()); var viewModel = new DummyTeamVM { Model = model }; var element = viewModel.ViewModels [0]; viewModel.Select(element); viewModel.ViewModels.Clear(); Assert.IsEmpty(viewModel.Selection); }
public TeamVM PrepareExport() { Utils.PlayerDummy player = new Utils.PlayerDummy(); DummyTeam team = new DummyTeam(); team.List.Add(player); TeamVM teamVM = new TeamVM { Model = team }; templatesController.ViewModel.ViewModels.Add(teamVM); templatesController.ViewModel.Selection.Add(teamVM); tempFile = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); tempFile = Path.ChangeExtension(tempFile, null); mockDialogs.Setup(m => m.SaveFile(It.IsAny <string> (), It.IsAny <string> (), It.IsAny <string> (), It.IsAny <string> (), It.IsAny <string []> ())). Returns(tempFile); return(teamVM); }
public void TestEventForwardingInCollectionReplacements() { // Arrange List <object> senderObjects = new List <object> (); DummyPlayer p1 = new DummyPlayer { Name = "Player 1" }; DummyPlayer p2 = new DummyPlayer { Name = "Player 2" }; DummyTeam team = new DummyTeam(); team.List.Add(p1); team.List.Add(p2); team.List.Swap(p1, p2); team.IsChanged = false; p1.IsChanged = false; p2.IsChanged = false; team.PropertyChanged += (sender, e) => { senderObjects.Add(sender); }; // Action p2.Nationality = "FR"; p1.Nationality = "DE"; //Assert Assert.AreEqual(p2.Nationality, team.List [0].Nationality); Assert.AreEqual(p1.Nationality, team.List [1].Nationality); Assert.IsTrue(team.IsChanged); Assert.IsTrue(p1.IsChanged); Assert.IsTrue(p2.IsChanged); Assert.AreEqual(2, senderObjects.Count); Assert.AreEqual(p2, senderObjects [0]); Assert.AreEqual(p1, senderObjects [1]); }
public void TestHandleSelectionChanged_LoadedTemplateWithTeamAndPlayer() { // Arrange Utils.PlayerDummy player = new Utils.PlayerDummy(); DummyTeam team = new DummyTeam(); team.List.Add(player); TeamVM teamVM = new TeamVM { Model = team }; templatesController.ViewModel.ViewModels.Add(teamVM); // Action templatesController.ViewModel.Selection.Replace(templatesController.ViewModel.ViewModels); // Assert Assert.IsNotNull(templatesController.ViewModel.LoadedTemplate, "Loaded template model"); Assert.IsNotEmpty(templatesController.ViewModel.LoadedTemplate.SubViewModel, "Loaded template subVM"); }