public void WhenConstructorZero_ShouldPopulateNoPrimes() { var primes = new PrimesModel(0); CollectionAssert.AreEqual(new List <long> { }, primes.Primes); Assert.AreEqual(0, primes.NumberOfPrimes); Assert.AreEqual(0, primes.GetPrimeTableAt(2, 2)); }
public void WhenConstructor1Prime_ShouldPopulateAppropiately() { var primes = new PrimesModel(1); CollectionAssert.AreEqual(new List <long> { 2 }, primes.Primes); Assert.AreEqual(1, primes.NumberOfPrimes); Assert.AreEqual(expected11x11PrimesTable[1, 1], primes.GetPrimeTableAt(1, 1)); }
public void WhenPopulatePrimes3Prime_ShouldPopulateAppropiately() { var primes = new PrimesModel(0); primes.PopulatePrimes(3); CollectionAssert.AreEqual(new List <long> { 2, 3, 5 }, primes.Primes); Assert.AreEqual(3, primes.NumberOfPrimes); Assert.AreEqual(expected11x11PrimesTable[2, 1], primes.GetPrimeTableAt(2, 1)); }
public void WhenConstructor10Prime_ShouldPopulateAppropiately() { var primes = new PrimesModel(10); CollectionAssert.AreEqual(new List <long> { 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 }, primes.Primes); Assert.AreEqual(10, primes.NumberOfPrimes); Assert.AreEqual(expected11x11PrimesTable[3, 2], primes.GetPrimeTableAt(3, 2)); Assert.AreEqual(expected11x11PrimesTable[4, 7], primes.GetPrimeTableAt(4, 7)); Assert.AreEqual(expected11x11PrimesTable[9, 9], primes.GetPrimeTableAt(9, 9)); }
public void WhenPopulatePrimes10Prime_ShouldPopulateAppropiately() { var primes = new PrimesModel(-5); primes.PopulatePrimes(10); CollectionAssert.AreEqual(new List <long> { 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 }, primes.Primes); Assert.AreEqual(10, primes.NumberOfPrimes); Assert.AreEqual(expected11x11PrimesTable[0, 1], primes.GetPrimeTableAt(0, 1)); Assert.AreEqual(expected11x11PrimesTable[5, 3], primes.GetPrimeTableAt(5, 3)); Assert.AreEqual(expected11x11PrimesTable[8, 9], primes.GetPrimeTableAt(8, 9)); }
public void WhenConstructorNegative_ShouldPopulateNoPrimes() { var primes = new PrimesModel(-1); CollectionAssert.AreEqual(new List <long> { }, primes.Primes); Assert.AreEqual(0, primes.NumberOfPrimes); Assert.AreEqual(0, primes.GetPrimeTableAt(0, 0)); primes = new PrimesModel(-500); CollectionAssert.AreEqual(new List <long> { }, primes.Primes); Assert.AreEqual(0, primes.NumberOfPrimes); Assert.AreEqual(0, primes.GetPrimeTableAt(1, 2)); }
public void WhenPopulatePrimesNegative_ShouldPopulateNoPrimes() { var primes = new PrimesModel(3); primes.PopulatePrimes(-1); CollectionAssert.AreEqual(new List <long> { }, primes.Primes); Assert.AreEqual(0, primes.NumberOfPrimes); Assert.AreEqual(0, primes.GetPrimeTableAt(0, 1)); primes = new PrimesModel(7); primes.PopulatePrimes(-239); CollectionAssert.AreEqual(new List <long> { }, primes.Primes); Assert.AreEqual(0, primes.NumberOfPrimes); Assert.AreEqual(0, primes.GetPrimeTableAt(3, 0)); }
static public void Main(string[] args) { Console.WriteLine(TextResources.Welcome); while (true) { int input = GetInput(); var primeModel = new PrimesModel(input); if (primeModel.NumberOfPrimes > 0) { for (int primeRow = 0; primeRow < primeModel.NumberOfPrimes; primeRow++) { for (int primeCol = 0; primeCol < primeModel.NumberOfPrimes; primeCol++) { Console.Write("| "); if (primeModel.GetPrimeTableAt(primeRow, primeCol) > 0) { Console.Write(primeModel.GetPrimeTableAt(primeRow, primeCol)); } Console.Write("\t"); } Console.WriteLine("|"); } } Console.WriteLine("Calculation Time: " + primeModel.CalculationTime.TotalSeconds + " secs"); Console.WriteLine(); Console.WriteLine(TextResources.Exit); var keyPressed = Console.ReadKey(true); if (keyPressed.KeyChar == 'y' || keyPressed.KeyChar == 'Y') { break; } } }
public void WhenCalculating100Primes_ShouldHaveCalculationTimeOverZero() { var primes = new PrimesModel(100); Assert.IsTrue(primes.CalculationTime.TotalSeconds > 0); }