public async Task CheckItemWithStatusNotNewCantBeNotAssigned(string userId, int itemTypeId) { ItemDto item1 = new ItemDto { Id = 1, SprintId = 1, AssignedUserId = null, Name = "Item Name1", Description = "Description Item1", StatusId = 2, TypeId = itemTypeId, IsArchived = false, ParentId = null, StoryPoint = 2 }; _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("dev1", It.IsAny <int>())).ReturnsAsync(AppUserRole.Developer); _mockSprintRepository.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestSprints()[0]); _mockProjectRepo.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestProjects()[0]); var ItemBl = new ItemBl(_mockItemRepo.Object, _mockMapper, _mockCommentRepo.Object, _mockProjectUserRepo.Object, _mockProjectRepo.Object, _mockSprintRepository.Object); //Act-Assert await Assert.ThrowsAsync <ForbiddenResponseException>(() => ItemBl.CreateAsync(item1, userId)); _mockItemRepo.Verify(r => r.CreateAsync(It.IsAny <Item>()), Times.Never); }
public async Task CheckDevCanCreateItemAssignedToHim(string userId, int itemTypeId) { ItemDto item1 = new ItemDto { Id = 1, SprintId = 1, AssignedUserId = "dev1", Name = "Item Name1", Description = "Description Item1", StatusId = 2, TypeId = itemTypeId, IsArchived = false, ParentId = null, StoryPoint = 2 }; _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("dev1", It.IsAny <int>())).ReturnsAsync(AppUserRole.Developer); _mockSprintRepository.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestSprints()[0]); _mockProjectRepo.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestProjects()[0]); var ItemBl = new ItemBl(_mockItemRepo.Object, _mockMapper, _mockCommentRepo.Object, _mockProjectUserRepo.Object, _mockProjectRepo.Object, _mockSprintRepository.Object); //Act-Assert var response = await ItemBl.CreateAsync(item1, userId); _mockItemRepo.Verify(r => r.CreateAsync(It.IsAny <Item>()), Times.Once); Assert.True(response.Success); }
public async Task CheckNotScrumMasterOrOwnerCanNotCreateUserStory(string userId) { //Arrange ItemDto item1 = new ItemDto { Id = 1, SprintId = 1, AssignedUserId = "2138b181-4cee-4b85-9f16-18df308f387d", Name = "Item Name1", Description = "Description Item1", StatusId = 1, TypeId = 1, IsArchived = false, ParentId = null, StoryPoint = 2 }; _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("developer", It.IsAny <int>())).ReturnsAsync(AppUserRole.Developer); _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("observer", It.IsAny <int>())).ReturnsAsync(AppUserRole.Observer); _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("none", It.IsAny <int>())).ReturnsAsync(AppUserRole.None); _mockSprintRepository.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestSprints()[0]); _mockProjectRepo.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestProjects()[0]); var ItemBl = new ItemBl(_mockItemRepo.Object, _mockMapper, _mockCommentRepo.Object, _mockProjectUserRepo.Object, _mockProjectRepo.Object, _mockSprintRepository.Object); //Act-Assert await Assert.ThrowsAsync <ForbiddenResponseException>(() => ItemBl.CreateAsync(item1, userId)); _mockItemRepo.Verify(r => r.CreateAsync(It.IsAny <Item>()), Times.Never); }
public async Task CheckScrumMasterOrOwnerCanCreateAnything(string userId, int itemType) { //Arrange ItemDto item1 = new ItemDto { Id = 1, SprintId = 1, AssignedUserId = "2138b181-4cee-4b85-9f16-18df308f387d", Name = "Item Name1", Description = "Description Item1", StatusId = 2, TypeId = 1, IsArchived = false, ParentId = null, StoryPoint = 2 }; _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("owner", It.IsAny <int>())).ReturnsAsync(AppUserRole.Owner); _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("master", It.IsAny <int>())).ReturnsAsync(AppUserRole.ScrumMaster); _mockSprintRepository.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestSprints()[0]); _mockProjectRepo.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(GetTestProjects()[0]); var ItemBl = new ItemBl(_mockItemRepo.Object, _mockMapper, _mockCommentRepo.Object, _mockProjectUserRepo.Object, _mockProjectRepo.Object, _mockSprintRepository.Object); //Act var item = await ItemBl.CreateAsync(item1, userId); //Assert var viewResult = Assert.IsAssignableFrom <ItemResponse>(item); _mockItemRepo.Verify(r => r.CreateAsync(It.IsAny <Item>()), Times.Once); Assert.True(viewResult.Success); }