Beispiel #1
0
        public async Task Test_Cancel_Delivery_Job_With_No_Task_In_Progress()
        {
            string cancellationReason = "test cancellation reason";

            var replaceOneResult = new ReplaceOneResult.Acknowledged(1, 1, null);

            var createdJob = GetDummyJob(OrderTypes.Delivery);

            var jobManagerMock = new Mock <IJobManager>();

            jobManagerMock.Setup(x => x.UpdateJob(It.IsAny <Job>()))
            .ReturnsAsync(null);

            var userStoreMock = new Mock <IUserStore <User> >();

            var jobRepository = new JobRepository(jobManagerMock.Object,
                                                  new AccountManager(userStoreMock.Object), activitySubject, jobIndexingSubject);

            var result = await jobRepository.CancelJob(createdJob, cancellationReason);

            Assert.IsNotNull(result);
            Assert.AreEqual(JobState.CANCELLED, result.UpdatedValue.State);
            Assert.AreEqual(cancellationReason, result.UpdatedValue.CancellationReason);
            Assert.AreEqual(JobTaskState.CANCELLED, result.UpdatedValue.Tasks.First().State);
        }
Beispiel #2
0
        private JobRepository SetupMockJobRepositoryForUpdate()
        {
            var jobManagerMock   = new Mock <IJobManager>();
            var replaceOneResult = new ReplaceOneResult.Acknowledged(1, 1, null);

            jobManagerMock.Setup(x => x.UpdateJob(It.IsAny <Job>()))
            .ReturnsAsync(null);

            var userStoreMock = new Mock <IUserStore <User> >();
            var jobRepository = new JobRepository(jobManagerMock.Object,
                                                  new AccountManager(userStoreMock.Object), activitySubject, jobIndexingSubject);

            return(jobRepository);
        }
Beispiel #3
0
        public async Task UpdateTechnologyStatusCallsReplaceOneReturnsNoContent()
        {
            var entityTechnologyUrl = new EntityTechnologyUrl()
            {
                Label = "", Url = ""
            };
            var newEntityTechnologyUrl = new EntityTechnologyUrl()
            {
                Label = "label", Url = "url"
            };
            var entityTechnology = new EntityTechnology("id", "status", new EntityTechnologyUrl[] { entityTechnologyUrl });
            var entity           = new Entity()
            {
                Technologies = new EntityTechnology[] { entityTechnology }
            };
            var patchedEntityTechnology = new EntityTechnology("id", "new status", new EntityTechnologyUrl[] { newEntityTechnologyUrl });
            var updatedEntityTechnology = entityTechnology;

            updatedEntityTechnology.UpdateEntityTechnology(patchedEntityTechnology);
            var replaceOneResult = new ReplaceOneResult.Acknowledged(1, 1, null);
            var mockQueue        = new Mock <IQueue>();
            var context          = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = new ClaimsPrincipal(new ClaimsIdentity(new Claim[]
                    {
                        new Claim(ClaimTypes.Role, "admin"),
                        new Claim(ClaimTypes.Name, ""),
                        new Claim(ClaimTypes.PrimaryGroupSid, "1"),
                    })),
                }
            };

            _controller.ControllerContext = context;
            _mockRepository.Setup(m => m.FindTechnologyByIdAsync(It.IsAny <string>(), It.IsAny <string>(), null))
            .ReturnsAsync(entityTechnology);
            _mockRepository.Setup(m => m.FindByIdAsync(It.IsAny <string>(), null)).ReturnsAsync(entity);

            var result = await _controller.UpdateTechnologyStatus(_mockRepository.Object, mockQueue.Object, "1", patchedEntityTechnology);

            _mockRepository.Verify(m => m.UpdateEntityTechnology("1", updatedEntityTechnology));
            mockQueue.Verify(m => m.PublishAsync("history", It.IsAny <string>()));
            Assert.IsType <NoContentResult>(result);
        }
Beispiel #4
0
        public void UpdateAsync_MissingKB()
        {
            var knowledgeBase = new KnowledgeBase {
                Id = "testId"
            };
            var updateResponse = new ReplaceOneResult.Acknowledged(0, 0, new BsonString("testId"));

            var knowledgeBaseRepository = new Mock <IKnowledgeBaseRepository>();

            knowledgeBaseRepository.Setup(x => x.UpdateAsync(It.IsAny <string>(), It.IsAny <IKnowledgeBase>()))
            .Returns(Task.FromResult((ReplaceOneResult)updateResponse));

            var service = new KnowledgeBaseService(knowledgeBaseRepository.Object, Mock.Of <ILogger <KnowledgeBaseService> >());

            var result = service.UpdateAsync("testId", knowledgeBase).Result;

            Assert.IsNull(result);
        }