public void Can_return_scheduling_decision_for_workflow_action_when_all_of_its_parents_are_completed()
        {
            var workflow = new WorkflowForSchedulableWorkflowActionWithMultipleParents("result");

            _eventsBuilder.AddNewEvents(CompletedActivityEventGraph(_activityName, _activityVersion, _positionalName));
            _eventsBuilder.AddNewEvents(CompletedActivityEventGraph(_siblingActivityName, _siblingActivityVersion));

            var decisions = workflow.Decisions(_eventsBuilder.Result());

            Assert.That(decisions, Is.EquivalentTo(new[] { new CompleteWorkflowDecision("result") }));
        }
        public void Can_return_scheduling_decision_for_workflow_action_when_all_of_its_parents_are_completed()
        {
            var workflow = new WorkflowForSchedulableWorkflowActionWithMultipleParents("result");
            var activityCompletedEventGraph = _builder.ActivityCompletedGraph(Identity.New(_activityName, _activityVersion, _positionalName), "id", "res");

            var siblingActivityCompletedGraph = _builder.ActivityCompletedGraph(Identity.New(_siblingActivityName, _siblingActivityVersion), "id2", "re2");

            var decisions = workflow.NewExecutionFor(new WorkflowHistoryEvents(siblingActivityCompletedGraph.Concat(activityCompletedEventGraph))).Execute();

            Assert.That(decisions, Is.EquivalentTo(new[] { new CompleteWorkflowDecision("result") }));
        }