예제 #1
0
        public void GivenValidMatrixWhenTraverseVerticallyThenReturnValidResult()
        {
            //Given
            string[,] matrix =
            {
                { "a", "b", "c" },
                { "d", "e", "f" },
                { "g", "h", "i" }
            };
            //When
            string result = ArrayTraversal.TraverseVertically(matrix);

            //Then
            Assert.Equal("adgbehcfi", result);
        }
예제 #2
0
        public void GivenMatrixWithMoreColumsThanRowsWhenTraverseThenReturnValidResult()
        {
            //Given
            string[,] matrix =
            {
                { "a", "b", "c", "d" },
                { "e", "f", "g", "h" },
                { "i", "j", "k", "l" }
            };
            //When
            string result = ArrayTraversal.TraverseMatrixDiagonally(matrix);

            //Then
            Assert.Equal("aebifcjgdkhl", result);
        }
예제 #3
0
        public void GivenAnMatrixWithMoreRowsThanColumsWhenTraverseThenReturnValidResult()
        {
            //Given
            string[,] matrix =
            {
                { "a", "b", "c" },
                { "d", "e", "f" },
                { "g", "h", "i" },
                { "j", "k", "l" }
            };
            //When
            string result = ArrayTraversal.TraverseMatrixDiagonally(matrix);

            //Then
            Assert.Equal("adbgecjhfkil", result);
        }
예제 #4
0
        public void Given5rowsX10colsMatrixWhenTraverseHorizontallyThenReturnValidResult()
        {
            //Given
            string[,] matrix =
            {
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" }
            };
            //When
            string result = ArrayTraversal.TraverseHorizontally(matrix);

            //Then
            Assert.Equal("1234567891012345678910123456789101234567891012345678910", result);
        }
예제 #5
0
        public void Given5rowsX10colsMatrixWhenTraverseVerticallyThenReturnValidResult()
        {
            //Given
            string[,] matrix =
            {
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" }
            };

            //When
            string result = ArrayTraversal.TraverseVertically(matrix);

            //Then
            Assert.Equal("1111122222333334444455555666667777788888999991010101010", result);
        }
예제 #6
0
        public void Given10rowsX5ColsMatrixWhenTraverseVerticallyThenReturnValidResult()
        {
            //Given
            string[,] matrix =
            {
                { "1", "2", "3", "4", "5"  },
                { "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5"  },
                { "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5"  },
                { "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5"  },
                { "6", "7", "8", "9", "10" },
                { "1", "2", "3", "4", "5"  },
                { "6", "7", "8", "9", "10" }
            };
            //When
            string result = ArrayTraversal.TraverseVertically(matrix);

            //Then
            Assert.Equal("1616161616272727272738383838384949494949510510510510510", result);
        }