Example #1
0
        private void TestConnectionGenerator(
            MapNodeInColumn[] fromNodes,
            MapNodeInColumn[] toNodes,
            List <Tuple <int, int>[]> expectedPossibilities)
        {
            var expected = new List <IEnumerable <Connection> >();

            foreach (var ep in expectedPossibilities)
            {
                var connections = new List <Connection>();
                foreach (var c in ep)
                {
                    connections.Add(new Connection
                    {
                        From = fromNodes.First(n => n.NodeId == c.Item1.ToString()),
                        To   = toNodes.First(n => n.NodeId == c.Item2.ToString()),
                    });
                }
                expected.Add(connections);
            }

            var solutions = new ConnectionGenerator()
                            .GeneratePossibilities(fromNodes, toNodes);

            solutions.ToFormattedString().ShouldBe(expected.ToFormattedString());
        }
        public void ValidateTestCases(
            int testCase,
            MapNodeInColumn[] fromNodes,
            MapNodeInColumn[] toNodes,
            List <IEnumerable <Connection> > expected)
        {
            var solutions = new ConnectionGenerator()
                            .GeneratePossibilities(fromNodes, toNodes);

            solutions.ToFormattedString().ShouldBe(expected.ToFormattedString());
        }
        public void BasicTwoNodes()
        {
            var f0 = 0.MakeNode();
            var t0 = 0.MakeNode();
            var fromNodes
                = new[] { f0 };
            var toNodes
                = new[] { t0 };
            var expected = new List <IEnumerable <Connection> > {
                new List <Connection> {
                    f0.MakeConnection(t0)
                }
            };

            var solutions = new ConnectionGenerator()
                            .GeneratePossibilities(fromNodes, toNodes);

            solutions.ToFormattedString().ShouldBe(expected.ToFormattedString());
        }