public async Task GetGroupAsync_WhenGroupExists_ShouldReturnGroup() { //Arrange var sutBuilder = new GroupServiceSutBuilder(); var group = sutBuilder.CreateGroupWithUsers("Test", 6); var groupService = sutBuilder.CreateSut(); A.CallTo(() => sutBuilder.GroupRepository.GetByIdAsync(group.Id)) .Returns(group); //Act var resultGroup = await groupService.GetGroupAsync(group.Id); //Assert resultGroup.ShouldBe(group); }
public void GetGroupsAsync_WhenUserDoesNotExist_ShouldThrow() { //Arrange var sutBuilder = new GroupServiceSutBuilder(); var group = sutBuilder.CreateGroupWithUsers("Test", 6); var groupService = sutBuilder.CreateSut(); IList <Group> groupList = new List <Group> { group }; var userid = Guid.NewGuid(); A.CallTo(() => sutBuilder.GroupRepository.GetByIdAsync(group.Id)) .Returns(group); A.CallTo(() => sutBuilder.UserRepository.GetByIdAsync(userid)) .Returns <User?>(null); //Act & Assert var exception = Assert.ThrowsAsync <NotFoundException>(async() => await groupService.GetGroupsAsync(userid)); exception.Message.ShouldBe($"User with id {userid} does not exist."); }