public FizzBuzzMediator(IFizzBuzzSequenceGenerator sequenceGenerator, IFizzBuzzFormatter formatter, TextWriter textWriter)
        {
            if (sequenceGenerator == null) throw new ArgumentNullException("sequenceGenerator");
            if (formatter == null) throw new ArgumentNullException("formatter");
            if (textWriter == null) throw new ArgumentNullException("textWriter");

            _sequenceGenerator = sequenceGenerator;
            _formatter = formatter;
            _textWriter = textWriter;
        }
Example #2
0
        public void CallFormatterForEachNumberUntillTheOneGiven()
        {
            IFizzBuzzFormatter fizzBuzzFormatter = Substitute.For <FizzBuzzFormatter>();
            FizzBuzz           fizzBuzz          = new FizzBuzz();

            fizzBuzz.Run(5);

            fizzBuzzFormatter.Received(5).Format(Arg.Any <int>());
            fizzBuzzFormatter.Received(1).Format(1);
            fizzBuzzFormatter.Received(1).Format(2);
            fizzBuzzFormatter.Received(1).Format(3);
            fizzBuzzFormatter.Received(1).Format(4);
            fizzBuzzFormatter.Received(1).Format(5);
        }