public async Task GetReviews_NotFound_ThrowsException() { // Arrange const int artifactId = 1; var controller = new RelationshipsController(_relationshipsRepositoryMock.Object, _artifactPermissionsRepositoryMock.Object, _artifactVersionsRepositoryMock.Object) { Request = new HttpRequestMessage() }; controller.Request.Properties[ServiceConstants.SessionProperty] = _session; _artifactPermissionsRepositoryMock.Setup(m => m.GetItemInfo(artifactId, _session.UserId, true, int.MaxValue)).ReturnsAsync((ItemInfo)null); // Act var result = await controller.GetReviewRelationships(artifactId); }
public async Task GetReviews_RelationshipIsReadOnly_Success() { // Arrange const int artifactId = 1; const int projectId = 10; const int destId = 123; var itemInfo = new ItemInfo { ProjectId = projectId, ArtifactId = artifactId, ItemId = artifactId }; var permisionDictionary = new Dictionary <int, RolePermissions>(); var resultSet = new ReviewRelationshipsResultSet { ReviewArtifacts = new List <ReferencedReviewArtifact> { new ReferencedReviewArtifact { ItemId = destId, ItemName = "Test Review", ItemTypePrefix = "Rev" } } }; permisionDictionary.Add(artifactId, RolePermissions.Read); permisionDictionary.Add(destId, RolePermissions.Read); _artifactPermissionsRepositoryMock.Setup(m => m.GetItemInfo(artifactId, _session.UserId, true, int.MaxValue)).ReturnsAsync(itemInfo); _artifactPermissionsRepositoryMock.Setup(m => m.GetArtifactPermissions(It.IsAny <List <int> >(), _session.UserId, false, int.MaxValue, true, null)).ReturnsAsync(permisionDictionary); _relationshipsRepositoryMock.Setup(m => m.GetReviewRelationships(artifactId, _session.UserId, true, It.IsAny <int?>())).ReturnsAsync(resultSet); var controller = new RelationshipsController(_relationshipsRepositoryMock.Object, _artifactPermissionsRepositoryMock.Object, _artifactVersionsRepositoryMock.Object) { Request = new HttpRequestMessage() }; controller.Request.Properties[ServiceConstants.SessionProperty] = _session; // Act var result = await controller.GetReviewRelationships(artifactId); // Assert Assert.IsNotNull(result); Assert.AreEqual(destId, result.ReviewArtifacts[0].ItemId); Assert.AreEqual("Test Review", result.ReviewArtifacts[0].ItemName); Assert.AreEqual("Rev", result.ReviewArtifacts[0].ItemTypePrefix); }
public async Task GetReviews_BadRequest_ThrowsException() { // Arrange const int artifactId = -1; var controller = new RelationshipsController(_relationshipsRepositoryMock.Object, _artifactPermissionsRepositoryMock.Object, _artifactVersionsRepositoryMock.Object) { Request = new HttpRequestMessage() }; controller.Request.Properties[ServiceConstants.SessionProperty] = _session; // Act try { var result = await controller.GetReviewRelationships(artifactId); } catch (BadRequestException e) { Assert.AreEqual(ErrorCodes.BadRequest, e.ErrorCode); } }