From 77e9b96f7f3409c376f28405f2232926c25758e0 Mon Sep 17 00:00:00 2001 From: tourmal Date: Mon, 5 Sep 2022 11:53:59 +0000 Subject: [PATCH 1/2] my working solution/spec pair --- lib/fizzbuzz.rb | 2 +- spec/fizzbuzz_spec.rb | 13 +++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/fizzbuzz.rb b/lib/fizzbuzz.rb index 225cc4f..988a370 100644 --- a/lib/fizzbuzz.rb +++ b/lib/fizzbuzz.rb @@ -1,3 +1,3 @@ def fizzbuzz(num) - 'fizz' + return((num % 15).zero? ? "fizzbuzz" : (num % 3).zero? ? "fizz" : (num % 5).zero? ? "buzz" : num) end \ No newline at end of file diff --git a/spec/fizzbuzz_spec.rb b/spec/fizzbuzz_spec.rb index fd1ec82..53da1fe 100644 --- a/spec/fizzbuzz_spec.rb +++ b/spec/fizzbuzz_spec.rb @@ -1,7 +1,16 @@ -require ./lib/'fizzbuzz' +require './lib/fizzbuzz' describe 'fizzbuzz' do - it 'returns "fizz" when passed 3' do + it 'returns "fizzbuzz" when passed a multiple of 3 and 5' do + expect(fizzbuzz(15)).to eq 'fizzbuzz' + end + it 'returns "fizz" when passed a multiple of 3' do expect(fizzbuzz(3)).to eq 'fizz' end + it 'returns "buzz" when passed a multiple of 5' do + expect(fizzbuzz(5)).to eq 'buzz' + end + it 'returns echoes when passed none of the above' do + expect(fizzbuzz(4)).to eq 4 + end end \ No newline at end of file From aa9ef097e1bef84e4d6acdb4d3f946533d2ca885 Mon Sep 17 00:00:00 2001 From: tourmal Date: Mon, 5 Sep 2022 13:59:25 +0000 Subject: [PATCH 2/2] solution refactor --- lib/fizzbuzz.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/fizzbuzz.rb b/lib/fizzbuzz.rb index 988a370..6a71373 100644 --- a/lib/fizzbuzz.rb +++ b/lib/fizzbuzz.rb @@ -1,3 +1,4 @@ +#one line! def fizzbuzz(num) return((num % 15).zero? ? "fizzbuzz" : (num % 3).zero? ? "fizz" : (num % 5).zero? ? "buzz" : num) end \ No newline at end of file