public void ObservableMessages_MemberEstimated_ScrumTeamMemberMessage() { // Arrange var target = new AzurePlanningPokerController(); target.EndInitialization(); var messages = new List <ScrumTeamMessage>(); var teamLock = target.CreateScrumTeam("test", "master"); teamLock.Team.ScrumMaster.StartEstimation(); // Act target.ObservableMessages.Subscribe(m => messages.Add(m)); teamLock.Team.ScrumMaster.Estimation = new Estimation(3.0); target.Dispose(); // Verify Assert.AreEqual <int>(2, messages.Count); Assert.AreEqual <MessageType>(MessageType.MemberEstimated, messages[0].MessageType); Assert.AreEqual <string>("test", messages[0].TeamName); Assert.IsInstanceOfType(messages[0], typeof(ScrumTeamMemberEstimationMessage)); var memberMessage = (ScrumTeamMemberEstimationMessage)messages[0]; Assert.AreEqual <string>("master", memberMessage.MemberName); Assert.AreEqual <double?>(3.0, memberMessage.Estimation); }
public void CreateScrumteam_TeamNameIsInInitializationTeamList_ArgumentException() { // Arrange var target = new AzurePlanningPokerController(); target.SetTeamsInitializingList(new string[] { "test" }); // Act target.CreateScrumTeam("test", "master"); }
public void CreateScrumteam_InitializationTimeout_Exception() { // Arrange var configuration = new AzurePlanningPokerConfigurationElement() { InitializationTimeout = 1 }; var target = new AzurePlanningPokerController(null, configuration, null); // Act target.CreateScrumTeam("test", "master"); }
public void CreateScrumteam_AfterInitialization_CreatesNewTeam() { // Arrange var target = new AzurePlanningPokerController(); target.EndInitialization(); // Act var result = target.CreateScrumTeam("test", "master"); // Verify Assert.IsNotNull(result); Assert.IsNotNull(result.Team); Assert.AreEqual <string>("test", result.Team.Name); Assert.AreEqual <string>("master", result.Team.ScrumMaster.Name); }
public void CreateScrumteam_InitializationTeamListIsNotSet_WaitForInitializationTeamList() { // Arrange var target = new AzurePlanningPokerController(); // Act var task = Task.Factory.StartNew <IScrumTeamLock>(() => target.CreateScrumTeam("test", "master")); Assert.IsFalse(task.IsCompleted); Thread.Sleep(50); Assert.IsFalse(task.IsCompleted); target.SetTeamsInitializingList(Enumerable.Empty <string>()); Assert.IsTrue(task.Wait(1000)); // Verify Assert.IsNotNull(task.Result); }
public void ObservableMessages_TeamCreated_ScrumTeamCreatedMessage() { // Arrange var target = new AzurePlanningPokerController(); target.EndInitialization(); var messages = new List <ScrumTeamMessage>(); // Act target.ObservableMessages.Subscribe(m => messages.Add(m)); target.CreateScrumTeam("test", "master"); target.Dispose(); // Verify Assert.AreEqual <int>(1, messages.Count); Assert.AreEqual <MessageType>(MessageType.TeamCreated, messages[0].MessageType); Assert.AreEqual <string>("test", messages[0].TeamName); }
public void GetScrumTeam_AfterInitialization_GetsExistingTeam() { // Arrange var target = new AzurePlanningPokerController(); target.EndInitialization(); ScrumTeam team; using (var teamLock = target.CreateScrumTeam("test team", "master")) { team = teamLock.Team; } // Act var result = target.GetScrumTeam("test team"); // Verify Assert.AreEqual <ScrumTeam>(team, result.Team); }