public void It_should_return_true_if_children_is_empty() { var children = new List <INodeData>(); var graph = A.Graph.Build(); var choice = new ChoiceRuntime(graph, "", null, children); Assert.IsTrue(choice.IsValid); }
public void It_should_return_a_valid_child() { var node = A.Node.Build(); var nodeData = A.NodeData.WithNode(node).Build(); var children = new List <INodeData> { nodeData }; var graph = A.Graph.WithNode(nodeData).Build(); var choice = new ChoiceRuntime(graph, "", null, children); var result = choice.GetValidChildNode(); Assert.AreEqual(node, result); }
public void It_should_not_return_an_invalid_child() { var node = A.Node.WithIsValid(false).Build(); var nodeData = A.NodeData.WithNode(node).Build(); var children = new List <INodeData> { nodeData }; var graph = A.Graph.WithNode(nodeData).Build(); var choice = new ChoiceRuntime(graph, "", null, children); var result = choice.GetValidChildNode(); Assert.IsNull(result); }
public void It_should_return_false_if_an_invalid_child_is_only_available() { var node = A.Node .WithIsValid(false) .Build(); var nodeData = A.NodeData.WithNode(node).Build(); var children = new List <INodeData> { nodeData }; var graph = A.Graph.WithNode(nodeData).Build(); var choice = new ChoiceRuntime(graph, "", null, children); Assert.IsFalse(choice.IsValid); }