private static void Main() { Console.WriteLine(EnterNumberPrompt); var input = Console.ReadLine(); var matrixSize = 0; while (!int.TryParse(input, out matrixSize) || matrixSize < 0 || matrixSize > 100) { Console.WriteLine(EnterNumberPrompt); input = Console.ReadLine(); } var matrix = RotatingWalkInMatrixCalculator.Calculate(matrixSize); for (var row = 0; row < matrixSize; row++) { for (var col = 0; col < matrixSize; col++) { Console.Write("{0,3}", matrix[row, col]); } Console.WriteLine(); } }
public void Calculate_WhenInputIsValid_ShouldReturnCorrectResults(int[,] expected) { var validMatrixSize = expected.GetLength(0); var result = RotatingWalkInMatrixCalculator.Calculate(validMatrixSize); Assert.AreEqual(expected, result); }
public void Calculate_WhenInputIsLessThanZero_ShouldThrowArgumentOutOfRangeExceptionWithCorrectMessage() { var invalidMatrixSize = -1; var ex = Assert.Throws <ArgumentOutOfRangeException>(() => RotatingWalkInMatrixCalculator.Calculate(invalidMatrixSize)); StringAssert.Contains("Matrix size", ex.Message); }