public void ShouldThrowExceptionWithStartIndexGreaterThanFinishIndex()
        {
            // Note: Requirements 2 and 3 should not require command line parsing to complete.
            var tokens = new List <Tuple <int, string> >
            {
                new Tuple <int, string>(3, "Fizz"),
                new Tuple <int, string>(5, "Buzz")
            };

            var superFizzBuzz = new SuperFizzBuzz();

            Assert.Throws <ArgumentOutOfRangeException>(() => superFizzBuzz.GetSuperFizzBuzz(-5, -10, tokens));
        }
        public void ShouldReturn1MillionIterationsWithLastValueOf_Buzz()
        {
            // Note: Requirements 2 and 3 should not require command line parsing to complete.
            var tokens = new List <Tuple <int, string> >
            {
                new Tuple <int, string>(3, "Fizz"),
                new Tuple <int, string>(5, "Buzz")
            };

            var superFizzBuzz = new SuperFizzBuzz();
            var actual        = superFizzBuzz.GetSuperFizzBuzz(1, 1000000, tokens);

            Assert.That(actual.Last(), Is.EqualTo("Buzz"));
        }
        public void ShouldReturnNegativeNumbersOf_FizzBuzz_14_13_Fizz_11_Buzz_Fizz_8_7_Fizz_Buzz_4_Fizz_2_1()
        {
            // Note: Requirements 2 and 3 should not require command line parsing to complete.
            var tokens = new List <Tuple <int, string> >
            {
                new Tuple <int, string>(3, "Fizz"),
                new Tuple <int, string>(5, "Buzz")
            };

            var superFizzBuzz = new SuperFizzBuzz();
            var expected      = new List <string> {
                "FizzBuzz", "-14", "-13", "Fizz", "-11", "Buzz", "Fizz", "-8", "-7", "Fizz", "Buzz", "-4", "Fizz", "-2", "-1"
            };
            var actual = superFizzBuzz.GetSuperFizzBuzz(-15, -1, tokens);

            Assert.That(actual, Is.EqualTo(expected));
        }
        public void ShouldReturn1_2_Fizz_4_Buzz_Fizz_7_8_Fizz_Buzz_11_Fizz_13_14_FizzBuzz()
        {
            // Note: Requirements 2 and 3 should not require command line parsing to complete.
            var tokens = new List <Tuple <int, string> >
            {
                new Tuple <int, string>(3, "Fizz"),
                new Tuple <int, string>(5, "Buzz")
            };

            var superFizzBuzz = new SuperFizzBuzz();
            var expected      = new List <string> {
                "1", "2", "Fizz", "4", "Buzz", "Fizz", "7", "8", "Fizz", "Buzz", "11", "Fizz", "13", "14", "FizzBuzz"
            };
            var actual = superFizzBuzz.GetSuperFizzBuzz(1, 15, tokens);

            Assert.That(actual, Is.EqualTo(expected));
        }
Exemple #5
0
        public void ShouldReturnThePropperSequenceEvenWithMixedPossitiveAndNegativeNumbersAndDups()
        {
            var superFizzBuzz = new SuperFizzBuzz();
            var userSuppliedListOfIntegers = new List <int> {
                -2, 3, 4, -15, 30, 2, -9, -9, 4
            };
            var tokens = new List <Tuple <int, string> >
            {
                new Tuple <int, string>(3, "Fizz"),
                new Tuple <int, string>(5, "Buzz")
            };
            var expected = new List <string> {
                "-2", "Fizz", "4", "FizzBuzz", "FizzBuzz", "2", "Fizz", "Fizz", "4"
            };
            var actual = superFizzBuzz.GetSuperFizzBuzz(userSuppliedListOfIntegers, tokens);

            Assert.That(actual, Is.EqualTo(expected));
        }
Exemple #6
0
        public void ShouldReturn2_Fizz_4_Buzz_FizzBuzz_FizzBuzz_2_Fizz()
        {
            var superFizzBuzz = new SuperFizzBuzz();
            var userSuppliedListOfIntegers = new List <int> {
                2, 3, 4, 15, 30, 2, 9
            };
            var tokens = new List <Tuple <int, string> >
            {
                new Tuple <int, string>(3, "Fizz"),
                new Tuple <int, string>(5, "Buzz")
            };
            var expected = new List <string> {
                "2", "Fizz", "4", "FizzBuzz", "FizzBuzz", "2", "Fizz"
            };
            var actual = superFizzBuzz.GetSuperFizzBuzz(userSuppliedListOfIntegers, tokens);

            Assert.That(actual, Is.EqualTo(expected));
        }
        public void ShouldReturn11_FrogDuck_10001_FrogChicken_1234567_FrogDuckChicken__DuckChicken()
        {
            var superFizzBuzz = new SuperFizzBuzz();
            var userSuppliedListOfIntegers = new List <int> {
                -11, 52, -10001, 36, 1234567, 468, 117
            };
            var tokens = new List <Tuple <int, string> >
            {
                new Tuple <int, string>(4, "Frog"),
                new Tuple <int, string>(13, "Duck"),
                new Tuple <int, string>(9, "Chicken")
            };

            var expected = new List <string> {
                "-11", "FrogDuck", "-10001", "FrogChicken", "1234567", "FrogDuckChicken", "DuckChicken"
            };
            var actual = superFizzBuzz.GetSuperFizzBuzz(userSuppliedListOfIntegers, tokens);

            Assert.That(actual, Is.EqualTo(expected));
        }
Exemple #8
0
        public void ShouldThrowExceptionWithEmptyList()
        {
            var superFizzBuzz = new SuperFizzBuzz();

            Assert.Throws <ArgumentOutOfRangeException>(() => superFizzBuzz.GetSuperFizzBuzz(new List <int>(), null));
        }