diff --git a/src/fizzbuzz/README.md b/src/fizzbuzz/README.md index 3944643..77b693c 100644 --- a/src/fizzbuzz/README.md +++ b/src/fizzbuzz/README.md @@ -1,3 +1,8 @@ # Exercício FizzBuzz - Clássico -Escreva um programa que mostre números de 1 a 100. Mas, para os múltiplos de 3 mostra “Fizz” e para os múltiplos de 5 mostre “Buzz”. Para números que sejam múltiplos de 3 e 5 mostre “FizzBuzz”. +Escreva um programa que mostre números de 1 a 100. +- Para os múltiplos de 3 mostre “Fizz” +- Para os múltiplos de 5 mostre “Buzz”. +- Para números que sejam múltiplos de 3 e 5 mostre “FizzBuzz”. + +Se o número não for múltiplo nem de 3, nem de 5, retorne ele mesmo. diff --git a/src/fizzbuzz/fizzbuzz.js b/src/fizzbuzz/fizzbuzz.js index e69de29..caa2c07 100644 --- a/src/fizzbuzz/fizzbuzz.js +++ b/src/fizzbuzz/fizzbuzz.js @@ -0,0 +1,16 @@ +function fizzbuzz(numero) { + let resultado = ""; + if (numero % 3 == 0) { + resultado = "Fizz"; + } + + if (numero % 5 == 0) { + resultado += "Buzz"; + } + if (resultado === "") { + resultado = numero; + } + return resultado; +} + +module.exports = fizzbuzz; diff --git a/src/fizzbuzz/fizzbuzz.test.js b/src/fizzbuzz/fizzbuzz.test.js index e69de29..c956e24 100644 --- a/src/fizzbuzz/fizzbuzz.test.js +++ b/src/fizzbuzz/fizzbuzz.test.js @@ -0,0 +1,35 @@ +const fizzbuzz = require("./fizzbuzz"); + +//Given - dado que +//should - deveria que isso... +//then - então espere isso + +describe("Se o número não for múltiplo de 3 ou de 5 ele deve retornar ele mesmo", () => { + test("Deve retornar 7 quando passado 7", () => { + const resultado = fizzbuzz(7); + // resultado === 7? + // expect(resultado).to.be.equal(7); + expect(resultado).toEqual(7); + }); + + test("Deve retornar 8 quando passado 8", () => { + const resultado = fizzbuzz(8); + // resultado === 8? + expect(resultado).toEqual(8); + }); + + test("Se não for múltiplo de 3 ou 5, retorna ele mesmo", () => { + const resultado = fizzbuzz(3); + expect(resultado).not.toEqual(3); + }); + + test("Se for múltiplo de 5 retorna Buzz", () => { + const resultado = fizzbuzz(10); + expect(resultado).toEqual("Buzz"); + }); + + test("Se for múltiplo de 3 e 5 retorna FizzBuzz", () => { + const resultado = fizzbuzz(15); + expect(resultado).toEqual("FizzBuzz"); + }); +});