public void InValid_PalinDromeTest() { var numtocheck = 1011; var fbpitem = new FBPalindromeItem(1); var result = fbpitem.GetResult(numtocheck); Assert.IsTrue(result.Text != "Palindrome!" && result.FBValue == numtocheck); }
private static FBResult[] ProcessResultsFizzAndPalindrome() { FBDivisorItem fb3 = new FBDivisorItem(3, "Fizz"); FBPalindromeItem fbp = new FBPalindromeItem(10); List <IFBItem> fbitems = new List <IFBItem>(); fbitems.Add(fb3); fbitems.Add(fbp); FBProcessor fbproc = new FBProcessor(numbers, fbitems); return(fbproc.GetResults()); }
public void All_Palindrome_PerfectSqaure_FizzBuzz_Test() { var sq = new int[] { 1, 4, 9, 16 }; //Single digits are counted as pailndromes, but the perfect squares are left out. //So 1,4 & 9 are not included. var p = new int[] { 2, 3, 5, 6, 7, 8, 11 }; var m15 = GetMultiplesByDivisor(15, numbers20).Where(n => !p.Contains(n) && !sq.Contains(n)).ToArray(); var m3 = GetMultiplesByDivisor(3, numbers20).Where(n => !m15.Contains(n) && !p.Contains(n) && !sq.Contains(n)).ToArray(); var m5 = GetMultiplesByDivisor(5, numbers20).Where(n => !m15.Contains(n) && !p.Contains(n) && !sq.Contains(n)).ToArray(); var other = numbers20.Where(n => !m3.Contains(n) && !m5.Contains(n) && !m15.Contains(n) && !p.Contains(n) && !sq.Contains(n)).ToArray(); var fb15 = new FBDivisorItem(15, "FizzBuzz"); var fb5 = new FBDivisorItem(5, "Buzz"); var fb3 = new FBDivisorItem(3, "Fizz"); var fbp = new FBPalindromeItem(20); var fbsq = new FBPerfectSquareItem(25); var fbproc = new FBProcessor(numbers20, new List <IFBItem> { fb15, fb5, fb3, fbp, fbsq }); var procresults = fbproc.GetResults(); var m3count = procresults.Where(n => n.Text == "Fizz").Count(); var m5count = procresults.Where(n => n.Text == "Buzz").Count(); var m15count = procresults.Where(n => n.Text == "FizzBuzz").Count(); var pcount = procresults.Where(n => n.Text == "Palindrome!").Count(); var sqcount = procresults.Where(n => n.Text == "Perfect Square!").Count(); var othercount = procresults.Where(n => n.Text == null).Count(); Assert.IsTrue( m3count == m3.Count() && m5count == m5.Count() && m15count == m15.Count() && othercount == other.Count() && pcount == p.Count() && sqcount == sq.Count() ); }