示例#1
0
        public async void StartDeletionProcess_InvalidMarkSessionId_NoExceptionThrown()
        {
            // Arrange
            var markSessionId            = "";
            var markSessionRepository    = new Mock <IMarkSessionRepository>();
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();
            var backgroundJobsHandler    = new Mock <IBackgroundJobsHandler>();
            var loggerService            = new Mock <ILoggerService>();
            var markSessionHandler       = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );
            Exception exception = null;

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

            // Assert
            Assert.Null(exception);
        }
示例#2
0
        public async void DeleteEmptyMarkSession_InvalidMarkSessionId_ThrowsException()
        {
            // Arrange
            var markSessionId            = "";
            var markSessionRepository    = new Mock <IMarkSessionRepository>();
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();
            var backgroundJobsHandler    = new Mock <IBackgroundJobsHandler>();
            var loggerService            = new Mock <ILoggerService>();
            var markSessionHandler       = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );
            Exception exception = null;

            try
            {
                // Act
                await markSessionHandler.DeleteEmptyMarkSession(markSessionId);
            }
            catch (MarkSessionDoesNotExistException e)
            {
                exception = e;
            }

            // Assert
            Assert.NotNull(exception);
        }
示例#3
0
        public async void StartDeletionProcess_ValidMarkSessionId_NoExceptionThrown()
        {
            // Arrange
            var markSessionId         = "5ae86f68b90b230007d7ea34";
            var markSessionRepository = new Mock <IMarkSessionRepository>();

            markSessionRepository
            .Setup(m => m.GetForFilter(It.IsAny <FilterDefinition <MarkSessionModel> >()))
            .ReturnsAsync(MarkSessionModelDataMocks.MockMarkSessionModel);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();
            var backgroundJobsHandler    = new Mock <IBackgroundJobsHandler>();
            var loggerService            = new Mock <ILoggerService>();
            var markSessionHandler       = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );
            Exception exception = null;

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

            // Assert
            Assert.Null(exception);
        }
示例#4
0
        public async void UpdateMarkSessionType_ValidMarkSessionId_ReturnsUpdatedMarkSessionModel()
        {
            // Arrange
            var markSessionId         = "5ae86f68b90b230007d7ea34";
            var markSessionType       = MarkSessionTypeEnum.ToBeArchived;
            var markSessionModel      = MarkSessionModelDataMocks.MockMarkSessionModel();
            var markSessionRepository = new Mock <IMarkSessionRepository>();

            markSessionRepository
            .Setup(m => m.GetForFilter(It.IsAny <FilterDefinition <MarkSessionModel> >()))
            .ReturnsAsync(markSessionModel);
            markSessionRepository
            .Setup(m => m.Update(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();
            var backgroundJobsHandler    = new Mock <IBackgroundJobsHandler>();
            var loggerService            = new Mock <ILoggerService>();
            var markSessionHandler       = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );

            // Act
            await markSessionHandler.UpdateMarkSessionType(markSessionId, markSessionType);

            // Assert
            Assert.Equal(markSessionType, markSessionModel.MarkSessionType);
        }
示例#5
0
        public async void DeleteMarkSession_ValidMarkSessionId_ReturnsUpdatedMarkSessionModel()
        {
            // Arrange
            var backgroundJobId       = "1234";
            var markSessionId         = "5ae86f68b90b230007d7ea34";
            var markSessionRepository = new Mock <IMarkSessionRepository>();

            markSessionRepository
            .Setup(m => m.GetForFilter(It.IsAny <FilterDefinition <MarkSessionModel> >()))
            .ReturnsAsync(MarkSessionModelDataMocks.MockMarkSessionModel);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();
            var backgroundJobsHandler    = new Mock <IBackgroundJobsHandler>();

            backgroundJobsHandler
            .Setup(m => m.CreateBackgroundJob(It.IsAny <Expression <Func <Task> > >()))
            .ReturnsAsync(backgroundJobId);
            var loggerService      = new Mock <ILoggerService>();
            var markSessionHandler = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );

            // Act
            var result = await markSessionHandler.DeleteMarkSession(markSessionId);

            // Assert
            Assert.Equal(result, backgroundJobId);
        }
示例#6
0
        public async void GetMarkSessionsByMarkSessionType_InvalidMarkSessionType_ReturnsEmptyList()
        {
            // Arrange
            var markSessionType       = "";
            var markSessionRepository = new Mock <IMarkSessionRepository>();

            markSessionRepository
            .Setup(m => m.GetAllForFilter(It.IsAny <FilterDefinition <MarkSessionModel> >()))
            .ReturnsAsync(new List <MarkSessionModel>());
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();
            var backgroundJobsHandler    = new Mock <IBackgroundJobsHandler>();
            var loggerService            = new Mock <ILoggerService>();
            var markSessionHandler       = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );

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

            // Assert
            Assert.Empty(result);
        }
示例#7
0
        public async void GetMarkSessionById_ValidMarkSessionId_ThrowsException()
        {
            // Arrange
            var markSessionId         = "5ae86f68b90b230007d7ea34";
            var markSessionRepository = new Mock <IMarkSessionRepository>();

            markSessionRepository
            .Setup(m => m.GetForFilter(It.IsAny <FilterDefinition <MarkSessionModel> >()))
            .ReturnsAsync(MarkSessionModelDataMocks.MockMarkSessionModel);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();
            var backgroundJobsHandler    = new Mock <IBackgroundJobsHandler>();
            var loggerService            = new Mock <ILoggerService>();
            var markSessionHandler       = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );

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

            // Assert
            Assert.NotNull(result);
        }
示例#8
0
        public async void CreateMarkSession_MarkSessionAlreadyExists_ThrowsException()
        {
            // Arrange
            var markSessionRepository = new Mock <IMarkSessionRepository>();

            markSessionRepository
            .Setup(m => m.Create(It.IsAny <MarkSessionModel>()))
            .Returns(Task.FromException(new MarkSessionAlreadyExistsException("")));
            markSessionRepository
            .Setup(m => m.Update(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();

            dependantResourceHandler
            .Setup(m => m.MarkResourcesForMarkSession(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            var backgroundJobsHandler = new Mock <IBackgroundJobsHandler>();
            var loggerService         = new Mock <ILoggerService>();
            var markSessionHandler    = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );
            Exception exception = null;

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

            // Assert
            Assert.NotNull(exception);
        }
        public async void StartDeletionProcess_MarkSessionDoesNotExistException_NoExceptionThrown()
        {
            // Arrange
            var backgroundJobClient  = new Mock <IBackgroundJobsHandler>();
            var markingServiceClient = new Mock <IMarkingServiceClient>();

            markingServiceClient
            .Setup(m => m.GetMarkSessionById(It.IsAny <string>()))
            .ThrowsAsync(new MarkSessionDoesNotExistException(It.IsAny <string>()));
            markingServiceClient
            .Setup(m => m.DeleteEmptyMarkingSession(It.IsAny <string>()))
            .Returns(Task.CompletedTask);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();

            dependantResourceHandler
            .Setup(m => m.DeleteDependantResourcesForMarkSession(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            var loggerService      = new Mock <ILoggerService>();
            var markSessionHandler = new MarkSessionHandler(
                backgroundJobClient.Object,
                markingServiceClient.Object,
                dependantResourceHandler.Object,
                loggerService.Object
                );
            Exception exception = null;

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

            // Asset
            Assert.Null(exception);
        }
        public async void DeleteMarkSessionAndDependantResources_StartBackgroundJob_ReturnsBackgroundJobId()
        {
            // Arrange
            var backgroundJobClient = new Mock <IBackgroundJobsHandler>();

            backgroundJobClient
            .Setup(m => m.CreateBackgroundJob(It.IsAny <Expression <Func <Task> > >()))
            .ReturnsAsync("12345");
            var markingServiceClient = new Mock <IMarkingServiceClient>();

            markingServiceClient
            .Setup(m => m.GetMarkSessionById(It.IsAny <string>()))
            .ReturnsAsync(It.IsAny <MarkSessionModel>());
            markingServiceClient
            .Setup(m => m.DeleteEmptyMarkingSession(It.IsAny <string>()))
            .Returns(Task.CompletedTask);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();

            dependantResourceHandler
            .Setup(m => m.DeleteDependantResourcesForMarkSession(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            var loggerService      = new Mock <ILoggerService>();
            var markSessionHandler = new MarkSessionHandler(
                backgroundJobClient.Object,
                markingServiceClient.Object,
                dependantResourceHandler.Object,
                loggerService.Object
                );

            // Act
            var backgroundJobId = await markSessionHandler.DeleteMarkSessionAndDependantResources(
                It.IsAny <MarkSessionModel>()
                );

            // Asset
            Assert.NotEmpty(backgroundJobId);
        }
示例#11
0
        public async void CreateMarkSession_NewMarkSession_ReturnsMarkSessionModel()
        {
            // Arrange
            var markSessionRepository = new Mock <IMarkSessionRepository>();

            markSessionRepository
            .Setup(m => m.Create(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            markSessionRepository
            .Setup(m => m.Update(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            var dependantResourceHandler = new Mock <IDependantResourceHandler>();

            dependantResourceHandler
            .Setup(m => m.MarkResourcesForMarkSession(It.IsAny <MarkSessionModel>()))
            .Returns(Task.CompletedTask);
            var backgroundJobsHandler = new Mock <IBackgroundJobsHandler>();
            var loggerService         = new Mock <ILoggerService>();
            var markSessionHandler    = new MarkSessionHandler(
                markSessionRepository.Object,
                dependantResourceHandler.Object,
                backgroundJobsHandler.Object,
                loggerService.Object
                );

            // Act
            var result = await markSessionHandler.CreateMarkSession(
                It.IsAny <string>(),
                It.IsAny <string>(),
                It.IsAny <string>(),
                It.IsAny <string>()
                );

            // Assert
            Assert.NotNull(result);
        }