Esempio n. 1
0
        public void ReturnsFizzBuzzForFifteen()
        {
            var fizzBuzz = new FizzBuzzNumber("15");
            var result   = fizzBuzz.GetValue();

            Assert.Equal("FizzBuzz", result);
        }
Esempio n. 2
0
        public void ReturnsOneForOne()
        {
            var fizzBuzz = new FizzBuzzNumber("1");
            var result   = fizzBuzz.GetValue();

            Assert.Equal("1", result);
        }
Esempio n. 3
0
        public void ReturnsZeroForZero()
        {
            var fizzBuzz = new FizzBuzzNumber("0");
            var result   = fizzBuzz.GetValue();

            Assert.Equal("0", result);
        }
Esempio n. 4
0
        public void ShouldReturnFizzForMultipleOfThree()
        {
            //arrange
            IFizzBuzz       fizzBuzz       = new FizzBuzz();
            IFizzBuzzNumber inputNumber    = new FizzBuzzNumber(3);
            IFizzBuzzResult expectedResult = new FizzResult();
            //act
            IFizzBuzzResult actualResult = fizzBuzz.Calculate(inputNumber);

            //assert
            actualResult.Equals(expectedResult).Should().BeTrue();
        }
Esempio n. 5
0
        public void GetWordToDisplay_GivenDivisibleNumber_ReturnsAssociatedWord()
        {
            var          fizzBuzz = new FizzBuzz();
            const string MessageForNumbersDivisibleByFive = "Divisible by five";
            var          fizzBuzzNumber = new FizzBuzzNumber()
            {
                Divisor = 5, Message = MessageForNumbersDivisibleByFive
            };
            var wordToDisplay = fizzBuzz.GetWordToDisplay(15, fizzBuzzNumber);

            Assert.Equal(MessageForNumbersDivisibleByFive, wordToDisplay);
        }
Esempio n. 6
0
        public void ShouldReturnString1ForNumber1()
        {
            //arrange
            IFizzBuzz       fizzBuzz       = new FizzBuzz();
            IFizzBuzzNumber inputNumber    = new FizzBuzzNumber(1);
            IFizzBuzzNumber expectedNumber = new FizzBuzzNumber(1);
            IFizzBuzzResult expectedResult = new NumberResult(expectedNumber);
            //act
            IFizzBuzzResult actualResultNumber = fizzBuzz.Calculate(inputNumber);

            //assert
            actualResultNumber.Equals(expectedResult).Should().BeTrue();
        }
Esempio n. 7
0
        public void GetWordToDisplay_GivenIndivisibleNumber_ReturnsEmptyString()
        {
            var          fizzBuzz = new FizzBuzz();
            const string wordToDisplayForNumbersDivisibleByFive = "Divisible by five";
            var          numberConfig = new FizzBuzzNumber()
            {
                Divisor = 5, Message = wordToDisplayForNumbersDivisibleByFive
            };

            var wordToDisplay = fizzBuzz.GetWordToDisplay(13, numberConfig);

            Assert.Empty(wordToDisplay);
        }
Esempio n. 8
0
        public IActionResult GetValue([FromBody] FizzBuzzModel model)
        {
            var numberValue = String.Empty;

            try
            {
                numberValue = new FizzBuzzNumber(model.Value).GetValue();
            }
            catch (NotANumberException)
            {
                Response.StatusCode = Convert.ToInt32(HttpStatusCode.BadRequest);

                return(BadRequest(new JsonErrorModel()
                {
                    StatusCode = Convert.ToInt32(HttpStatusCode.BadRequest),
                    Code = "NOT_A_NUMBER",
                    Detail = "Value has to be a number"
                }));
            }

            return(Ok(new { value = numberValue }));
        }
Esempio n. 9
0
        public void Given_An_Integer_Correct_FizzBuzz_Returned(int number, string output)
        {
            var fizzBuzzNumber = new FizzBuzzNumber(number);

            Assert.AreEqual(output, fizzBuzzNumber.ToString());
        }
Esempio n. 10
0
 private bool Equals(FizzBuzzNumber other) => other._origin.Equals(_origin);
Esempio n. 11
0
        public void NotANumberExceptionIsThrownForANonNumber()
        {
            var fizzBuzz = new FizzBuzzNumber("Jordan");

            Assert.Throws <NotANumberException>(() => fizzBuzz.GetValue());
        }