private void MatrixRotateTest(IMatrixRotator matrixRotator) { int size = 100; int[][] matrix = new int[size][]; for (int i = 0; i < matrix.Length; i++) { int[] row = matrix[i] = new int[size]; for (int j = 0; j < row.Length; j++) { row[j] = j + i; } } int[][] expected = new int[size][]; for (int i = 0; i < expected.Length; i++) { int[] row = expected[i] = new int[size]; for (int j = 0; j < row.Length; j++) { row[j] = i + expected.Length - j - 1; } } matrixRotator.RotateMatrix(matrix); for (int i = 0; i < matrix.Length; i++) { int[] row = matrix[i]; for (int j = 0; j < row.Length; j++) { int matrixValue = matrix[i][j]; int expectedValue = expected[i][j]; Assert.AreEqual(expectedValue, matrixValue); } } }
private void RunTests(IMatrixRotator matrixRotator) { MatrixRotateTest(matrixRotator); }