Пример #1
0
        public void WholeBoard6x6_WithReadySetsLeftTwoOne()
        {
            int[] cluesForTest = { 0, 0, 0, 3, 4, 0, 0, 3, 2, 0, 0, 5, 0, 0, 4, 0, 0, 0, 0, 0, 0, 2, 0, 3 };
            var   dictFortest  = new Dictionary <int[], string>();

            dictFortest.Add(new int[] { 4, 1 }, "3");


            int[][] expected =
            {
                new [] { 6, 1, 2, 3, 5, 4 },
                new [] { 5, 3, 4, 1, 6, 2 },
                new [] { 4, 6, 3, 2, 1, 5 },
                new [] { 1, 2, 5, 6, 4, 3 },
                new [] { 3, 5, 6, 4, 2, 1 },
                new [] { 2, 4, 1, 5, 3, 6 }
            };
            expected = RotateLeft(expected);
            Assert.AreEqual(expected, SkyScrapersAll.SolvePuzzle(cluesForTest, true, dictFortest));
        }
Пример #2
0
        public void DevelopmentalTree()
        {
            int[] cluesForTest = { 0, 0, 4, 0, 0, 0, 0, 0, 0, 2, 0, 3, 0, 0, 0, 3, 4, 0, 0, 3, 2, 0, 0, 5 };
            int[] upClues;
            int[] rightClues;
            int[] bottomClues;
            int[] leftClues;
            SkyScrapersAll.SetClues(cluesForTest, out upClues, out rightClues, out bottomClues, out leftClues);

            string[][] expected =
            {
                new [] { "6", "1", "2", "3", "5", "4" },
                new [] { "5", "3", "4", "1", "6", "2" },
                new [] { "4", "6", "3", "2", "1", "5" },
                new [] { "1", "2", "5", "6", "4", "3" },
                new [] { "3", "5", "6", "4", "2", "1" },
                new [] { "2", "4", "1", "5", "3", "6" }
            };
            expected = RotateLeft(expected);
            expected = RotateLeft(expected);
            expected = RotateLeft(expected);
            Assert.AreEqual(true, SkyScrapersAll.IsBoardDevelopmental(expected, upClues, rightClues, bottomClues, leftClues, 6));
        }
Пример #3
0
        public void DevelopmentalZero()
        {
            int[] cluesForTest = { 0, 0, 0, 2, 0, 3, 0, 0, 0, 3, 4, 0, 0, 3, 2, 0, 0, 5, 0, 0, 4, 0, 0, 0 };
            int[] upClues;
            int[] rightClues;
            int[] bottomClues;
            int[] leftClues;
            SkyScrapersAll.SetClues(cluesForTest, out upClues, out rightClues, out bottomClues, out leftClues);

            string[][] expected =
            {
                new [] { "6", "1", "2", "3", "5", "4" },
                new [] { "5", "3", "4", "1", "6", "2" },
                new [] { "4", "6", "3", "2", "1", "5" },
                new [] { "1", "2", "5", "6", "4", "3" },
                new [] { "3", "5", "6", "4", "2", "1" },
                new [] { "2", "4", "1", "5", "3", "6" }
            };
            Assert.AreEqual(true, SkyScrapersAll.IsBoardDevelopmental(expected, upClues, rightClues, bottomClues, leftClues, 6));
            var dictFortest = new Dictionary <int[], string>();

            dictFortest.Add(new int[] { 1, 1 }, "3");
            Assert.AreEqual(true, SkyScrapersAll.SolvePuzzle(cluesForTest, true, dictFortest).Length != 1);
        }