public void IsNotFizzBuzz() { int[] values = new int[] { // Multipes of neither 3, nor 5 7, 11, 67, 97, // Multipes of 3, not 5 3, 6, 27, 78, // Multipes of 5, not 3 10, 25, 95 }; foreach (var v in values) { LevelOfFizzBuzz result = FizzBuzz.GetFizzBuzz(v); Assert.AreNotEqual(LevelOfFizzBuzz.FIZZ_BUZZ, result); } }
public void IsNotBuzz() { int[] values = new int[] { // Not multipe of 5 1, 19, 61, 98 }; foreach (var v in values) { LevelOfFizzBuzz result = FizzBuzz.GetFizzBuzz(v); Assert.AreEqual(LevelOfFizzBuzz.NONE, result); } values = new int[] { // Multiples of 3, but not 5 9, 48, 81 }; foreach (var v in values) { LevelOfFizzBuzz result = FizzBuzz.GetFizzBuzz(v); // These values are not multiples of 3 Assert.AreEqual(LevelOfFizzBuzz.NONE, result & LevelOfFizzBuzz.BUZZ); } }
public static LevelOfFizzBuzz GetFizzBuzz(int value) { LevelOfFizzBuzz result = LevelOfFizzBuzz.NONE; if (DivisibleBy3And5(value)) { result = LevelOfFizzBuzz.FIZZ_BUZZ; } else if (DivisibleBy3(value)) { result = LevelOfFizzBuzz.FIZZ; } else if (DivisibleBy5(value)) { result = LevelOfFizzBuzz.BUZZ; } return(result); }
public void IsFizzBuzz() { int[] values = new int[] { // Treat zero as a multipe of 3 and 5 0, // Multiples of 5 15, 45, 90, // A negative -45 }; foreach (var v in values) { LevelOfFizzBuzz result = FizzBuzz.GetFizzBuzz(v); Assert.AreEqual(LevelOfFizzBuzz.FIZZ_BUZZ, result); } }
public void IsBuzz() { int[] values = new int[] { // Multiples of 5 10, 40, 85, // A negative -50 }; foreach (var v in values) { LevelOfFizzBuzz result = FizzBuzz.GetFizzBuzz(v); Assert.AreEqual(LevelOfFizzBuzz.BUZZ, result); } values = new int[] { // Treat zero as a multipe of of 3 and 15 0, // Multiples of 3 and 15 15, 45, 90, }; foreach (var v in values) { LevelOfFizzBuzz result = FizzBuzz.GetFizzBuzz(v); Assert.AreNotEqual(LevelOfFizzBuzz.BUZZ, result); // These values are still multiples of 5 Assert.AreEqual(LevelOfFizzBuzz.BUZZ, result & LevelOfFizzBuzz.BUZZ); } }