public void ExecuteSieveExpectingResultsForValue(uint value)
        {
            Sieve sieve = new SieveOfEratosthenesImplementation(value);

            uint[] primes = sieve.FindPrimeNumbers();
            Assert.NotEqual(null, primes);
            Assert.True(primes.All(prime => SieveTestHelper.isPrime(prime)));

            switch (value)
            {
            case 2:
                Assert.True(primes.Count() == 1);
                break;

            case 120:
                Assert.True(primes.Count() == 30);
                break;

            case 150978:
                Assert.True(primes.Count() == 13930);
                break;

            default:
                break;
            }
        }
예제 #2
0
        static void Main(string[] args)
        {
            ConsoleAdapter console    = new ConsoleImplementation();
            bool           shouldExit = false;

            while (!shouldExit)
            {
                try
                {
                    console.RequestNumber();
                    string userInput = console.GetInput();
                    if (userInput == null)
                    {
                        continue;
                    }
                    uint numberToSieve = console.GetNumberFromInput(userInput);
                    var  sieve         = new SieveOfEratosthenesImplementation(numberToSieve);
                    var  primes        = sieve.FindPrimeNumbers();
                    console.DisplayPrimesFound(primes);
                }
                catch
                {
                    shouldExit = true;
                }
            }
        }
        public void FindPrimesWithLateSet()
        {
            Sieve sieve = new SieveOfEratosthenesImplementation();

            sieve.SetThreshold(120);
            var primes = sieve.FindPrimeNumbers();

            Assert.True(primes.Count() == 30);
        }
예제 #4
0
        public ActionResult <List <uint> > GetSieveListOfResult(uint sieveThreshold)
        {
            try
            {
                SieveDomain.Sieve sieve = new SieveOfEratosthenesImplementation(sieveThreshold);
                var primes = sieve.FindPrimeNumbers();
                return(primes.ToList());
            }
            catch (IncorrectValue)
            {
                if (HttpContext != null)
                {
                    HttpContext.Response.StatusCode = 422;
                }
                return(new List <uint>());
            }
#pragma warning disable CS0162 // Impossible d'atteindre le code détecté
            return(new List <uint>());

#pragma warning restore CS0162 // Impossible d'atteindre le code détecté
        }
        public void CantFindPrimesWithoutAskingForANumber()
        {
            Sieve sieve = new SieveOfEratosthenesImplementation();

            Assert.Throws <SieveNotInitialized>(() => { sieve.FindPrimeNumbers(); });
        }
 public void InstantiateDefaultConstructorSieve()
 {
     Sieve sieve = new SieveOfEratosthenesImplementation();
 }
        public void ExecuteSieveNotExpectingResults()
        {
            Sieve sieve = new SieveOfEratosthenesImplementation(120);

            uint[] primes = sieve.FindPrimeNumbers();
        }
 public void InstantiateSieveWithIncorrectValues(uint valeur)
 {
     Assert.Throws <IncorrectValue>(() => { Sieve sieve = new SieveOfEratosthenesImplementation(valeur); });
 }
        public void InstantiateSieve()
        {
            Sieve sieve = new SieveOfEratosthenesImplementation(SieveOfEratosthenesImplementation.minimumCorrectValue);

            Assert.IsType <SieveOfEratosthenesImplementation>(sieve);
        }