コード例 #1
0
        public async void CreateMarkSession_InternalServerErrorStatusCode_ThrowsException()
        {
            // Arrange
            var httpService         = new Mock <IHttpService>();
            var httpResponseMessage = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.InternalServerError,
                Content    = new StringContent("Some error has occurred!")
            };

            httpService
            .Setup(m => m.PostAsync(It.IsAny <string>(), It.IsAny <string>()))
            .Returns(Task.FromResult(httpResponseMessage));
            var       markingServiceClient = new MarkingServiceClient(httpService.Object);
            Exception exception            = null;

            try
            {
                // Act
                await markingServiceClient.CreateMarkSession(
                    It.IsAny <string>(), It.IsAny <string>(),
                    It.IsAny <string>(), It.IsAny <string>()
                    );
            }
            catch (FailedToCreateMarkSessionException e)
            {
                exception = e;
            }

            // Assert
            Assert.NotNull(exception);
        }
コード例 #2
0
        public async void CreateMarkSession_NotMarkedResources_ReturnsMarkSessionModel()
        {
            // Arrange
            var resourceType         = ResourceTypeEnum.Metadata;
            var resourceId           = "45db3205-83be-42a1-af14-6a03df9d9536";
            var projectId            = "73fcb3bf-bc8b-4c8b-801f-8a90d92bf9c2";
            var markSessionType      = MarkingServiceClient.MarkSessionTypeToBeDeleted;
            var httpService          = new HttpService(new HttpClient());
            var markingServiceClient = new MarkingServiceClient(httpService);

            // Act
            var result = await markingServiceClient.CreateMarkSession(
                resourceType,
                resourceId,
                projectId,
                markSessionType
                );

            // Assert
            // Verify that the mark session is created
            Assert.NotNull(result);

            var metadata = await ResourceTypeHelper.RetreiveMetadata(resourceId);

            // Verify that the metadata is marked
            Assert.Equal(MetadataModel.ToBeDeletedState, metadata.State);
        }
コード例 #3
0
        public async void DeleteMarkingSession_InternalServerErrorStatusCode_ThrowsException()
        {
            // Arrange
            var httpService         = new Mock <IHttpService>();
            var httpResponseMessage = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.InternalServerError,
                Content    = new StringContent("")
            };

            httpService
            .Setup(m => m.DeleteAsync(It.IsAny <string>()))
            .ReturnsAsync(httpResponseMessage);
            var       markingServiceClient = new MarkingServiceClient(httpService.Object);
            Exception exception            = null;

            try
            {
                // Act
                await markingServiceClient.DeleteEmptyMarkingSession(It.IsAny <string>());
            }
            catch (FailedToDeleteMarkSessionException e)
            {
                exception = e;
            }

            // Assert
            Assert.NotNull(exception);
        }
コード例 #4
0
        public async void UpdateMarkSessionType_InternalServerErrorStatusCode_ThrowsException()
        {
            // Arrange
            var httpResponseMessage = new HttpResponseMessage(HttpStatusCode.InternalServerError)
            {
                Content = new StringContent("")
            };
            var httpService = new Mock <IHttpService>();

            httpService
            .Setup(m => m.PutAsync(It.IsAny <string>(), It.IsAny <string>()))
            .ReturnsAsync(httpResponseMessage);
            var       markingServiceClient = new MarkingServiceClient(httpService.Object);
            Exception exception            = null;

            try
            {
                // Act
                await markingServiceClient.UpdateMarkSessionType(It.IsAny <string>(), It.IsAny <string>());
            }
            catch (Exception e)
            {
                exception = e;
            }

            // Assert
            Assert.NotNull(exception);
        }
コード例 #5
0
        public async void GetMarkSessionById_NotFoundStatusCode_ThrowsException()
        {
            // Arrange
            var httpService         = new Mock <IHttpService>();
            var httpResponseMessage = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.NotFound
            };

            httpService
            .Setup(m => m.GetAsync(It.IsAny <string>()))
            .ReturnsAsync(httpResponseMessage);
            var       markingServiceClient = new MarkingServiceClient(httpService.Object);
            Exception exception            = null;

            try
            {
                // Act
                await markingServiceClient.GetMarkSessionById(It.IsAny <string>());
            }
            catch (MarkSessionDoesNotExistException e)
            {
                exception = e;
            }

            // Assert
            Assert.NotNull(exception);
        }
コード例 #6
0
        public async void GetMarkSessionsByMarkSessionType_MarkSessionModelExists_ReturnsMarkSessionModelList()
        {
            // Arrange
            var markSessionType      = MarkingServiceClient.MarkSessionTypeToBeDeleted;
            var httpService          = new HttpService(new HttpClient());
            var markingServiceClient = new MarkingServiceClient(httpService);

            // Act
            var result = await markingServiceClient.GetMarkSessionsByMarkSessionType(markSessionType);

            // Assert
            Assert.NotEmpty(result);
        }
コード例 #7
0
        public async void GetMarkSessionById_ValidMarkSessionId_ReturnsMarkSessionModel()
        {
            // Arrange
            var markSessionId        = "5b07decf7aa54a0007b3db51";
            var httpService          = new HttpService(new HttpClient());
            var markingServiceClient = new MarkingServiceClient(httpService);

            // Act
            var result = await markingServiceClient.GetMarkSessionById(markSessionId);

            // Assert
            Assert.NotNull(result);
        }
コード例 #8
0
        public async void DeleteEmptyMarkingSession_MissingProjectId_ThrowsException()
        {
            // Arrange
            var       markSessionId        = "5b07def67aa54a0007b3db53";
            var       httpService          = new HttpService(new HttpClient());
            var       markingServiceClient = new MarkingServiceClient(httpService);
            Exception exception            = null;

            try
            {
                // Act
                await markingServiceClient.DeleteEmptyMarkingSession(markSessionId);
            }
            catch (Exception e)
            {
                exception = e;
            }

            // Assert
            Assert.NotNull(exception);
        }
コード例 #9
0
        public async void GetMarkSessionsByMarkSessionType_NoContentStatusCode_ReturnsEmptyList()
        {
            // Arrange
            var httpService         = new Mock <IHttpService>();
            var httpResponseMessage = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.NoContent,
                Content    = new StringContent("")
            };

            httpService
            .Setup(m => m.GetAsync(It.IsAny <string>()))
            .ReturnsAsync(httpResponseMessage);
            var markingServiceClient = new MarkingServiceClient(httpService.Object);

            // Act
            var markSessionModels = await markingServiceClient.GetMarkSessionsByMarkSessionType(It.IsAny <string>());

            // Assert
            Assert.Empty(markSessionModels);
        }
コード例 #10
0
        public async void GetMarkSessionById_OkStatusCode_ReturnsModel()
        {
            // Arrange
            var httpService         = new Mock <IHttpService>();
            var httpResponseMessage = new HttpResponseMessage
            {
                StatusCode = HttpStatusCode.OK,
                Content    = new StringContent(MarkSessionModelDataMocks.MockMarkSessionModelJson)
            };

            httpService
            .Setup(m => m.GetAsync(It.IsAny <string>()))
            .ReturnsAsync(httpResponseMessage);
            var markingServiceClient = new MarkingServiceClient(httpService.Object);

            // Act
            var markSessionModel = await markingServiceClient.GetMarkSessionById(It.IsAny <string>());

            // Assert
            Assert.NotNull(markSessionModel);
        }
コード例 #11
0
        public async void UpdateMarkSessionType_MarkSessionModelExists_NoExceptionThrown()
        {
            // Arrange
            var       markSessionId        = "5b07dee57aa54a0007b3db52";
            var       markSessionType      = MarkingServiceClient.MarkSessionTypeToBeDeleted;
            var       httpService          = new HttpService(new HttpClient());
            var       markingServiceClient = new MarkingServiceClient(httpService);
            Exception exception            = null;

            try
            {
                // Act
                await markingServiceClient.UpdateMarkSessionType(markSessionId, markSessionType);
            }
            catch (Exception e)
            {
                exception = e;
            }

            // Assert
            Assert.Null(exception);
        }