Exemple #1
0
 public Scheduler(
     [NotNull] IStateSynchronizer synchronizer,
     [NotNull] IFlowController controller,
     [NotNull] IJobWaiter jobWaiter,
     [NotNull] IJobHandler jobHandler)
 {
     this.synchronizer = synchronizer;
     this.controller   = controller;
     this.jobWaiter    = jobWaiter;
     this.jobHandler   = jobHandler;
 }
Exemple #2
0
        public void TestSetup()
        {
            synchronizer = Substitute.For <IStateSynchronizer>();

            controller = Substitute.For <IFlowController>();
            controller.ShouldStillOperateOn(Arg.Any <SchedulerState>()).Returns(true, true, true, true, false); // 2 iterations

            completedTask1 = Task.FromResult(true);
            completedTask2 = Task.FromResult(true);

            jobWaiter = Substitute.For <IJobWaiter>();
            jobWaiter
            .WaitForNextCompletedJob(Arg.Any <SchedulerState>())
            .Returns(completedTask1, completedTask2);

            jobHandler = Substitute.For <IJobHandler>();

            scheduler = new Hercules.Client.Sink.Scheduler.Scheduler(synchronizer, controller, jobWaiter, jobHandler);
        }