Beispiel #1
0
        public void TestNativeJobsControllerGetByIdWithJobGroupName()
        {
            // Arrange
            IPersistenceStore persistenceStore = new InMemoryStore();

            Scheduler.Shutdown();

            Scheduler.Initialize((config =>
            {
                config.EnableWebApiSelfHost = false;
                config.EnableAuditHistory = false;
                config.PersistenceStoreType = PersistenceStoreType.InMemory;
                config.AutoStart = false;
            }));

            var schedulerCore = new SchedulerCore(Scheduler.Instance(), persistenceStore);

            const string jobName  = "Job1";
            const string jobGroup = "Group1";
            var          jobId    = new Guid("30575FAE-86D3-4EC1-8E10-1E7F5EA6BBB4");

            schedulerCore.CreateJob(jobName, jobGroup, typeof(NativeJob),
                                    new Dictionary <string, object> {
                { "waitForProcess", "false" }, { "consumeStreams", "false" }
            }, string.Empty,
                                    jobId);


            _mockPermissionsHelper.Setup(i => i.GetAuthorizedJobGroups()).Returns(new List <string> {
                "Group1"
            });
            var nativeJobsController = new NativeJobsController(_mockPermissionsHelper.Object, schedulerCore);

            // Act
            var job = nativeJobsController.Get(jobId);

            // Assert
            Assert.Equal(jobGroup, job.JobGroup);
            Assert.Equal(jobName, job.JobName);
        }
Beispiel #2
0
        public void TestNativeJobsControllerGetByIdThrowsUnauthorized()
        {
            // Arrange
            IPersistenceStore persistenceStore = new InMemoryStore();

            Scheduler.Shutdown();

            Scheduler.Initialize((config =>
            {
                config.EnableWebApiSelfHost = false;
                config.EnableAuditHistory = false;
                config.PersistenceStoreType = PersistenceStoreType.InMemory;
                config.AutoStart = false;
            }));

            var schedulerCore = new SchedulerCore(Scheduler.Instance(), persistenceStore);

            const string jobName  = "Job1";
            const string jobGroup = "Group1";
            var          jobId    = new Guid("30575FAE-86D3-4EC1-8E10-1E7F5EA6BBB4");

            schedulerCore.CreateJob(jobName, jobGroup, typeof(NoOpJob), new Dictionary <string, object>(), string.Empty, jobId);


            _mockPermissionsHelper.Setup(i => i.GetAuthorizedJobGroups()).Returns(new List <string> {
                "test_group"
            });
            var nativeJobsController = new NativeJobsController(_mockPermissionsHelper.Object, schedulerCore);

            // Act amd Assert
            try
            {
                nativeJobsController.Get(jobId);
            }
            catch (HttpResponseException ex)
            {
                Assert.Equal(HttpStatusCode.Unauthorized, ex.Response.StatusCode);
            }
        }