public void NewTag_OneExternalTagButtonSelected_ExternalTagAdded() { // Arrange TagButtonVM t1 = new TagButtonVM { Model = new TagButton { Tag = new Tag("x", "a") }, Active = true }; project.Dashboard.ViewModels.Add(t1); var newTagEvent = new NewTagEvent { EventType = project.Model.EventTypes [0], Start = new Time(0), Stop = new Time(10), Tags = new List <Tag> (), EventTime = new Time(9), Button = null }; // Act App.Current.EventsBroker.Publish(newTagEvent); project.Dashboard.ViewModels.Remove(t1); // Assert Assert.AreEqual("a", sentTimelineEvent.Tags [0].Group); Assert.AreEqual(1, sentTimelineEvent.Tags.Count()); }
void HandleNewTagEvent(NewTagEvent e) { if (project == null) { return; } var eventVM = CreateTimelineEventVM(e.EventType, e.Start, e.Stop, e.EventTime, null); eventVM.Model.Tags.AddRange(e.Tags); // add selected tag buttons eventVM.Model.Tags.AddRange(project.Dashboard.ViewModels.OfType <TagButtonVM> ().Where(x => x.Active).Select(x => x.Tag.Model)); AddPlayersToEvent(eventVM); AddTeamsToEvent(eventVM); App.Current.EventsBroker.Publish( new NewDashboardEvent { TimelineEvent = eventVM, DashboardButton = e.Button, Edit = !project.Dashboard.DisablePopupWindow, DashboardButtons = null, } ); Reset(); }
public void TestHandleResetWhenAPlayerIsLocked() { // Arrange player1.Tagged = true; player2.Locked = true; player2.Tagged = true; player3.Tagged = true; var newTagEvent = new NewTagEvent { EventType = new EventType { Name = "test" }, Start = new Time(0), Stop = new Time(10), Tags = new List <Tag> (), EventTime = new Time(9), Button = null }; // Action App.Current.EventsBroker.Publish(newTagEvent); // Assert Assert.IsFalse(player1.Tagged, "Player 1 should not be tagged"); Assert.IsTrue(player2.Locked, "Player 2 should be locked"); Assert.IsTrue(player2.Tagged, "Player 2 should be tagged"); Assert.IsFalse(player3.Tagged, "Player 3 should not be tagged"); }
void HandleAction(NewTagEvent obj) { if (answer != null) { answer(this, new EventArgs()); } }
public void TestNewTagEvent() { var newTagEvent = new NewTagEvent { EventType = project.Model.EventTypes [0], Start = new Time(0), Stop = new Time(10), Tags = new List <Tag> (), EventTime = new Time(9), Button = null }; // Action App.Current.EventsBroker.Publish(newTagEvent); Assert.AreEqual(new Time(9).MSeconds, sentTimelineEvent.EventTime.MSeconds); Assert.IsTrue(hasSentDashboardEvent); }
public void TestNewTagEventWithTeam() { team1.Tagged = true; var newTagEvent = new NewTagEvent { EventType = project.Model.EventTypes [0], Start = new Time(0), Stop = new Time(10), Tags = new List <Tag> (), EventTime = new Time(9), Button = null }; // Action App.Current.EventsBroker.Publish(newTagEvent); Assert.AreEqual(1, sentTimelineEvent.Teams.Count); Assert.AreSame(team1.Model, sentTimelineEvent.Teams.First()); }
public void TestNewTagEventWithPlayers() { player1.Tagged = true; player3.Tagged = true; var newTagEvent = new NewTagEvent { EventType = project.Model.EventTypes [0], Start = new Time(0), Stop = new Time(10), Tags = new List <Tag> (), EventTime = new Time(9), Button = null }; // Action App.Current.EventsBroker.Publish(newTagEvent); Assert.AreEqual(new Time(9).MSeconds, sentTimelineEvent.EventTime.MSeconds); Assert.AreEqual(2, sentTimelineEvent.Players.Count); }