Example #1
0
 public void Run()
 {
     try
     {
         if (closure != null)
         {
             closure();
             this.status = SpecStatus.PASSED;
         }
         else
         {
             this.status = SpecStatus.INCOMPLETE;
         }
     }
     catch (ExpectationException ex)
     {
         exception      = ex;
         showStackTrace = ex.ShowStackTrace;
         this.status    = SpecStatus.FAILED;
     }
     catch (System.Exception ex)
     {
         exception      = ex;
         ShowStackTrace = true;
         this.status    = SpecStatus.FAILED;
     }
 }
Example #2
0
        public void SetStatus(string runnerId, SpecStatus specStatus, UInt64 time, IEnumerable <SpecStep> steps, IFileLocationParser fileLocationParser, IFileLocationMapper fileLocationMapper)
        {
            SpecStatusViewModel specStatusViewModel = null;

            if (!Statuses.TryGetValue(runnerId, out specStatusViewModel) || specStatusViewModel.Time <= time)
            {
                if (specStatusViewModel == null)
                {
                    specStatusViewModel = new SpecStatusViewModel()
                    {
                        Duration = 0
                    };
                    Statuses[runnerId] = specStatusViewModel;
                }
                else
                {
                    specStatusViewModel.Duration += (int)(time - specStatusViewModel.Time);
                }
                specStatusViewModel.Status = specStatus;
                specStatusViewModel.Time   = time;
                if (steps != null)
                {
                    specStatusViewModel.Steps = new BindableCollection <SpecStepViewModel>(steps.Select(s => SpecStepViewModel.Create(s, fileLocationParser, fileLocationMapper)));
                }
                UpdateDuration();
            }
        }
Example #3
0
        public Spec(string title, Action closure, Suite suite)
        {
            this.title   = title;
            this.closure = closure;
            this.suite   = suite;

            this.status    = SpecStatus.WAITING;
            this.exception = null;
        }
Example #4
0
        private SpecStatusViewModel CreateSpecStatusViewModel(SpecStatus specStatus, UInt64 time, int duration, SpecStep[] steps = null)
        {
            SpecStatusViewModel vm = new SpecStatusViewModel()
            {
                Status = specStatus, Time = time, Duration = duration
            };

            if (steps != null)
            {
                vm.Steps = new BindableCollection <SpecStepViewModel>(steps.Select(s => new SpecStepViewModel
                {
                    Message = s.Message,
                    Status  = s.Status,
                    Trace   = new BindableCollection <SpecTraceStepViewModel>(new SpecTraceStepViewModel[] { SpecTraceStepViewModel.Create(s.Trace, null, null) })
                }));
            }
            return(vm);
        }
Example #5
0
        private static AdaptiveTextColor GetColorForStatus(SpecStatus status)
        {
            switch (status)
            {
            case SpecStatus.Approved:
                return(AdaptiveTextColor.Good);

            case SpecStatus.Draft:
                return(AdaptiveTextColor.Warning);

            case SpecStatus.HasConcerns:
                return(AdaptiveTextColor.Attention);

            case SpecStatus.ReadyForReview:
                return(AdaptiveTextColor.Accent);

            default:
                return(AdaptiveTextColor.Default);
            }
        }
Example #6
0
            private Spec CreateSpec(SpecStatus specStatus = SpecStatus.Running)
            {
                Suite parentSuite = new Suite()
                {
                    Id = _ParentSuiteId, Name = "Suite 1", ParentSuite = null, Status = specStatus
                };
                Suite suite = new Suite()
                {
                    Id = _SuiteId, Name = "Suite 1", ParentSuite = parentSuite, Status = specStatus
                };

                return(new Spec()
                {
                    Id = _SpecId,
                    Name = "Spec 1",
                    Status = specStatus,
                    Suite = suite,
                    Time = 100
                });
            }
Example #7
0
 private void OnStatusChanged(SpecStatus oldValue, SpecStatus newValue)
 {
     UpdateDescription();
 }
Example #8
0
 public void SetStatus(string runnerId, SpecStatus specStatus, UInt64 time)
 {
     SetStatus(runnerId, specStatus, time, null, null, null);
 }
Example #9
0
 private KeyValuePair <string, SpecStatusViewModel> CreateKeyValue(string guid, SpecStatus specStatus, UInt64 time, int duration, SpecStep[] steps = null)
 {
     return(new KeyValuePair <string, SpecStatusViewModel>(guid, CreateSpecStatusViewModel(specStatus, time, duration, steps)));
 }