Esempio n. 1
0
        public void WhenChildReturnRunning_ReturnRunning()
        {
            var sut = new Failer <MockContext>(new MockBehaviour {
                ReturnStatus = BehaviourStatus.Running
            });

            var behaviourStatus = sut.Tick(new MockContext());

            Assert.That(behaviourStatus, Is.EqualTo(BehaviourStatus.Running));
        }
Esempio n. 2
0
        public void WhenChildReturnFailure_ReturnFailure()
        {
            var sut = new Failer <MockContext>(new MockBehaviour {
                ReturnStatus = BehaviourStatus.Failed
            });

            var behaviourStatus = sut.Tick(new MockContext());

            Assert.That(behaviourStatus, Is.EqualTo(BehaviourStatus.Failed));
        }
        public override void Cancel()
        {
            IsCancellationRequested = true;
            if (Successor != null)
            {
                Successor.Cancel();
            }

            if (Failer != null)
            {
                Failer.Cancel();
            }
        }
        public virtual IEnumerable <IChangeableData> Parce(string entryPoint)
        {
            logger.Debug($"Successor type - '{Successor}', Failer type is '{Failer}'.");
            ShouldStopOperating();
            IEnumerable <IChangeableData> data = TryParce(entryPoint);

            if (data == null && Failer != null)
            {
                data = Failer.Parce(entryPoint);
            }

            FillChildsInParallel(data, Successor);
            return(data);
        }
Esempio n. 5
0
        public override IEnumerable <IChangeableData> Parce(string entryPoint)
        {
            logger.Debug($"Successor type - '{Successor}', Failer type is '{Failer}'.");
            ShouldStopOperating();
            IEnumerable <IChangeableData> data = null;

            try
            {
                data = TryParce(entryPoint);
            }
            catch (HtmlRoutineException ex)
            {
                logger.ErrorFormat(ex.Message);
            }

            if (data == null)
            {
                logger.WarnFormat(Warn_NextParser, Failer.GetType().Name);
                data = Failer.Parce(entryPoint);
            }

            return(data);
        }
Esempio n. 6
0
 public void OnFailure(Java.Lang.Exception e)
 {
     Failer?.Invoke(this, new EventArgs());
 }
 public void Visit(Failer <TContext> obj)
 {
     PrintNode(obj);
     VisitChild(obj);
 }