public void ReturnCorrectMessage_WhenCorrectParametrsArePassed() { //Arrange this.gettersMock.Setup(x => x.GetBoard(validTeamName, validBoardName)).Returns(boardMock.Object); this.gettersMock.Setup(x => x.GetAssignableWorkItem(boardMock.Object, this.validWorkItemTitle)).Returns(this.workItemMock.Object); this.gettersMock.Setup(x => x.GetPerson(this.validPersonName)).Returns(this.personMock.Object); this.personMock.SetupGet(x => x.PersonName).Returns(this.validPersonName); this.personMock.SetupGet(x => x.IsAssignedToTeam).Returns(true); this.personMock.SetupGet(x => x.MemberWorkItems).Returns(new List <IWorkItem>()); this.workItemMock.SetupGet(x => x.Title).Returns(validWorkItemTitle); var sut = new AssignWorkItemToMemberCommand(this.historyEventWriterMock.Object, this.gettersMock.Object); var parameters = new List <string>() { this.validTeamName, this.validBoardName, this.validWorkItemTitle, this.validPersonName, }; var expectedReturn = string.Format(CommandsConsts.WorkItemAssigned, validWorkItemTitle, validPersonName); //Act var actualReturn = sut.Execute(parameters); //Assert Assert.AreEqual(expectedReturn, actualReturn); }
public void ThrowArgumentException_WhenPersonIsNotAssignedToTeam() { //Arrange this.gettersMock.Setup(x => x.GetBoard(validTeamName, validBoardName)).Returns(boardMock.Object); this.gettersMock.Setup(x => x.GetAssignableWorkItem(It.IsAny <IBoard>(), this.validWorkItemTitle)).Returns(this.workItemMock.Object); this.gettersMock.Setup(x => x.GetPerson(this.validPersonName)).Returns(this.personMock.Object); this.personMock.SetupGet(x => x.PersonName).Returns(this.validPersonName); this.personMock.SetupGet(x => x.IsAssignedToTeam).Returns(false); this.personMock.SetupGet(x => x.MemberWorkItems).Returns(new List <IWorkItem>()); var sut = new AssignWorkItemToMemberCommand(this.historyEventWriterMock.Object, this.gettersMock.Object); var parameters = new List <string>() { this.validTeamName, this.validBoardName, this.validWorkItemTitle, this.validPersonName, }; string expectedExceptionMessage = string.Format(CommandsConsts.NotMemberOfAnyTeam, validPersonName); //Act, Assert Assert.AreEqual( expectedExceptionMessage, Assert.ThrowsException <ArgumentException>(() => sut.Execute(parameters)).Message ); }
public void AddWorkItemToMember_WhenCorrectParametrsArePassed() { //Arrange this.gettersMock.Setup(x => x.GetBoard(validTeamName, validBoardName)).Returns(boardMock.Object); this.gettersMock.Setup(x => x.GetAssignableWorkItem(boardMock.Object, this.validWorkItemTitle)).Returns(this.workItemMock.Object); this.gettersMock.Setup(x => x.GetPerson(this.validPersonName)).Returns(this.personMock.Object); this.personMock.SetupGet(x => x.PersonName).Returns(this.validPersonName); this.personMock.SetupGet(x => x.IsAssignedToTeam).Returns(true); this.personMock.SetupGet(x => x.MemberWorkItems).Returns(new List <IWorkItem>()); this.workItemMock.SetupGet(x => x.Title).Returns(validWorkItemTitle); var sut = new AssignWorkItemToMemberCommand(this.historyEventWriterMock.Object, this.gettersMock.Object); var parameters = new List <string>() { this.validTeamName, this.validBoardName, this.validWorkItemTitle, this.validPersonName, }; //Act sut.Execute(parameters); //Assert Assert.AreEqual(workItemMock.Object, personMock.Object.MemberWorkItems.Single()); }
public void ExecuteAllFiveMethodsOnce_WhenValidParametersArePassed() { //Arrange this.gettersMock.Setup(x => x.GetBoard(validTeamName, validBoardName)).Returns(boardMock.Object); this.gettersMock.Setup(x => x.GetAssignableWorkItem(boardMock.Object, this.validWorkItemTitle)).Returns(this.workItemMock.Object); this.gettersMock.Setup(x => x.GetPerson(this.validPersonName)).Returns(this.personMock.Object); this.personMock.SetupGet(x => x.PersonName).Returns(this.validPersonName); this.personMock.SetupGet(x => x.IsAssignedToTeam).Returns(true); this.personMock.SetupGet(x => x.MemberWorkItems).Returns(new List <IWorkItem>()); var sut = new AssignWorkItemToMemberCommand(this.historyEventWriterMock.Object, this.gettersMock.Object); var parameters = new List <string>() { this.validTeamName, this.validBoardName, this.validWorkItemTitle, this.validPersonName, }; //Act var returnMessage = sut.Execute(parameters); //Assert this.gettersMock.Verify(x => x.GetBoard(this.validTeamName, this.validBoardName), Times.Once); this.gettersMock.Verify(x => x.GetPerson(this.validPersonName), Times.Once); this.gettersMock.Verify(x => x.GetAssignableWorkItem(boardMock.Object, this.validWorkItemTitle), Times.Once); this.workItemMock.Verify(x => x.AssignMember(this.personMock.Object), Times.Once); this.historyEventWriterMock. Verify(x => x.AddHistoryEvent( returnMessage, personMock.Object, It.IsAny <IBoard>(), It.IsAny <ITeam>(), workItemMock.Object ), Times.Once); }