public void IsValidNumber()
        {
            int minBound = 42;
            int maxBound = 10000;

            string[] numbers =
            {
                "2134",
                "21313-213-1",
                "430",
                "-21331",
                "02131",
                "10001",
                "939",
                ""
            };

            for (int i = 0; i < numbers.Length; ++i)
            {
                var currentValue = numbers[i];
                if (i % 2 == 0)
                {
                    Assert.AreEqual(UserInputValidator.IsValidNumber(currentValue, minBound, maxBound, out _), true);
                }
                else
                {
                    Assert.AreEqual(UserInputValidator.IsValidNumber(currentValue, minBound, maxBound, out _), false);
                }
            }
        }
Exemplo n.º 2
0
        public int ReadNumberWithHint(string hint, int minBound, int maxBound)
        {
            System.Console.WriteLine(hint);

            var input = System.Console.ReadLine();
            int number;

            while (!UserInputValidator.IsValidNumber(input, minBound, maxBound, out number))
            {
                System.Console.WriteLine($"Please enter a number between {minBound} and {maxBound}!");
                System.Console.WriteLine(hint);
                input = System.Console.ReadLine();
            }
            System.Console.WriteLine();

            return(number);
        }