Create() 공개 정적인 메소드

Create a new run method manager object.
public static Create ( Func runNextStep ) : RunDispatcher
runNextStep Func /// Conditional indicating whether more work will remain after /// performing the work. ///
리턴 RunDispatcher
        /// <summary>
        /// Publish final results. If not yet ready, will keep waiting around
        /// as a work item until it is done.
        /// </summary>
        private void PublishFinalResults()
        {
            if (TestService != null && TestService.BusyServiceReferenceCounter > 0)
            {
                if (_harnessTasks == null)
                {
                    _harnessTasks = new CompositeWorkItem();
                }
                _harnessTasks.Enqueue(new CallbackWorkItem(() => { }));
                _harnessTasks.Enqueue(new CallbackWorkItem(PublishFinalResults));
                if (RunDispatcher == null)
                {
                    RunDispatcher = RunDispatcher.Create(RunNextStep, Dispatcher);
                    RunDispatcher.Run();
                }
            }
            else
            {
                _harnessTasks = null;
                RunDispatcher = null;
                PublishFinalResult();

                if (IsReportingTestServiceConnected())
                {
                    SetOverallStatus("Reporting complete...");
                }
            }
        }
        /// <summary>
        /// Restarts the run dispatcher.
        /// </summary>
        public virtual void RestartRunDispatcher()
        {
            if (_harnessTasks == null)
            {
                CreateHarnessTasks();
            }

            RunDispatcher           = RunDispatcher.Create(RunNextStep, Dispatcher);
            RunDispatcher.Complete += new EventHandler(RunDispatcherComplete);
            RunDispatcher.Run();
        }
예제 #3
0
파일: TestHarness.cs 프로젝트: ynkbt/moon
 /// <summary>
 /// Restart the run method manager for the harness.
 /// </summary>
 public virtual void RestartRunDispatcher()
 {
     this.RunDispatcher           = RunDispatcher.Create(RunNextStep);
     this.RunDispatcher.Complete += new EventHandler(RunDispatcherComplete);
     this.RunDispatcher.Run();
 }