public void TestIsPrime(int numberToTest, bool isPrime)
        {
            Factorizer factorizer = new Factorizer();

            bool isPrimeResult = factorizer.IsPrime(numberToTest);

            Assert.AreEqual(isPrime, isPrimeResult);
        }
        public void TestFindNextPrimeNumber(int prime, int nextPrime)
        {
            Factorizer factorizer = new Factorizer();

            int nextPrimeResult = factorizer.FindNextPrimeNumber(prime);

            Assert.AreEqual(nextPrime, nextPrimeResult);
        }
        public void TestFactoization(int numberToTest, int[] primeFactors)
        {
            Factorizer factorizer = new Factorizer();

            factorizer.FindPrimeFactorsFor(numberToTest);

            List<int> result = factorizer.PrimeFactors();

            int[] primeFactorsArray = result.ToArray();

            Assert.AreEqual(primeFactors, primeFactorsArray);
        }
        public static void Main(string[] args)
        {
            while (true)
            {
                Console.WriteLine("Number to Factorize:");

                string number = Console.ReadLine();

                Factorizer factorizer = new Factorizer();

                factorizer.FindPrimeFactorsFor(int.Parse(number));

                List<int> primeFactors = factorizer.PrimeFactors();

                Console.WriteLine("Ordered Prime Factors:");

                foreach (int prime in primeFactors)
                {
                    Console.WriteLine("    " + prime);
                }
            }
        }