WorkflowRun CreateRun(Workflow wf, DateTime completedDate, WorkflowRunState_Enumeration status)
        {
            var runOld = Entity.Create <WorkflowRun>();

            runOld.RunCompletedAt         = completedDate;
            runOld.WorkflowRunStatus_Enum = status;
            wf.RunningInstances.Add(runOld);

            return(runOld);
        }
        public void IsRunCleanedUp(WorkflowRunState_Enumeration state, int age, bool isCleaned)
        {
            var wf  = new Workflow();
            var run = CreateRun(wf, DateTime.Now.AddDays(-age).ToUniversalTime(), state);

            wf.Save();

            (new CleanUpWorkflowRunsAction()).RemoveOldWorkflowRuns(DateTime.Now.AddDays(-5));

            var run2 = Entity.Get(run.Id);

            if (isCleaned)
            {
                Assert.IsNull(run2);
            }
            else
            {
                Assert.IsNotNull(run2);
            }
        }