public static void CreateSimpleParallelWorkflow(this IWorkStepRepository workStepRepository)
 {
     workStepRepository.CreateWorkStep(WorkStep.New("/development").UpdateOrdinal(1).UpdateType(WorkStepType.Begin).UpdateWorkItemClass("cr"));
     workStepRepository.CreateWorkStep(WorkStep.New("/feedback").UpdateOrdinal(2).UpdateType(WorkStepType.Parallel).UpdateWorkItemClass("cr"));
     workStepRepository.CreateWorkStep(WorkStep.New("/feedback/review").UpdateOrdinal(1).UpdateType(WorkStepType.Normal).UpdateWorkItemClass("cr-review"));
     workStepRepository.CreateWorkStep(WorkStep.New("/feedback/test").UpdateOrdinal(2).UpdateType(WorkStepType.Normal).UpdateWorkItemClass("cr-test"));
     workStepRepository.CreateWorkStep(WorkStep.New("/done").UpdateOrdinal(2).UpdateType(WorkStepType.End).UpdateWorkItemClass("cr"));
 }
 public void CreateWorkStep(WorkStep workStep)
 {
     _workStepRepository.CreateWorkStep(workStep);
 }
        public void ShouldNotAcceptNewWorkItemIfNumberOfWorkItemsInWorkStepIsEqualToWipLimit()
        {
            var analysis = WorkStep.New("/analysis").UpdateWipLimit(2);

            _workStepRepository.CreateWorkStep(analysis);

            AssertBelowWipLimitAndCreateWorkItem(analysis, "cr1");
            AssertBelowWipLimitAndCreateWorkItem(analysis, "cr2");


            Assert.IsFalse(CanAcceptWip(analysis, "cr3"));
        }