示例#1
0
        public void CanRunJobSuccess()
        {
            setupCalled    = false;
            runCalled      = false;
            tearDownCalled = false;
            var mockJob = serviceProvider.GetRequiredService <MockTileGenerationJob>();

            Assert.IsNotNull(mockJob);
            mockJob.SetupInvoked    += OnSetupInvoked;
            mockJob.RunInvoked      += OnRunInvoked;
            mockJob.TearDownInvoked += OnTearDownInvoked;
            var context       = GetMockHangfireContext(typeof(VSSHangfireJobRunnerTests), TestContext.TestName, string.Empty);
            var errorProvider = new Mock <IErrorCodesProvider>();
            var configStore   = new Mock <IConfigurationStore>();
            var jobManager    = new JobRegistrationManager(loggerFactory);
            var jobFactory    = new JobFactory(serviceProvider, jobManager);
            var vssJobUid     = Guid.NewGuid();

            jobManager.RegisterJob(vssJobUid, typeof(MockTileGenerationJob));
            var devOpsNotification = new Mock <IDevOpsNotification>();
            var jobRunner          = new JobRunner(loggerFactory, errorProvider.Object, configStore.Object, jobFactory, jobManager, serviceProvider);
            var request            = new JobRequest {
                JobUid = vssJobUid, RunParameters = new DxfTileGenerationRequest()
            };
            var result = jobRunner.RunHangfireJob("testjob", request, false, null, context);

            Assert.IsTrue(setupCalled);
            Assert.IsTrue(runCalled);
            Assert.IsTrue(tearDownCalled);
        }
示例#2
0
        public void CanRunJobFailureNotRegistered()
        {
            var context       = GetMockHangfireContext(typeof(VSSHangfireJobRunnerTests), TestContext.TestName, string.Empty);
            var errorProvider = new Mock <IErrorCodesProvider>();
            var configStore   = new Mock <IConfigurationStore>();

            configStore.Setup(c => c.GetValueString(It.IsAny <string>())).Returns("some environment");
            var jobFactory = new Mock <IJobFactory>();

            jobFactory.Setup(f => f.GetJob(It.IsAny <Guid>()))
            .Returns((IJob)null);
            var devOpsNotification = new Mock <IDevOpsNotification>();
            var jobManager         = new JobRegistrationManager(loggerFactory);
            var jobRunner          = new JobRunner(loggerFactory, errorProvider.Object, configStore.Object, jobFactory.Object, jobManager, serviceProvider);
            var vssJobUid          = Guid.NewGuid();
            var request            = new JobRequest {
                JobUid = vssJobUid, RunParameters = new DxfTileGenerationRequest()
            };

            Assert.ThrowsException <AggregateException>(() => jobRunner.RunHangfireJob("testjob", request, false, null, context).Result);
        }