diff --git a/ruby/gilded_rose.rb b/ruby/gilded_rose.rb index a18b6ba2..20bf3dea 100644 --- a/ruby/gilded_rose.rb +++ b/ruby/gilded_rose.rb @@ -52,17 +52,3 @@ class GildedRose end end end - -class Item - attr_accessor :name, :sell_in, :quality - - def initialize(name:, sell_in:, quality:) - @name = name - @sell_in = sell_in - @quality = quality - end - - def to_s() - "#{@name}, #{@sell_in}, #{@quality}" - end -end diff --git a/ruby/gilded_rose_spec.rb b/ruby/gilded_rose_spec.rb index 1dddb62a..d21f6937 100644 --- a/ruby/gilded_rose_spec.rb +++ b/ruby/gilded_rose_spec.rb @@ -1,6 +1,7 @@ require File.join(File.dirname(__FILE__), 'gilded_rose') +require File.join(File.dirname(__FILE__), 'item') -describe GildedRose do +RSpec.describe GildedRose do subject { Item.new(name: name, sell_in: sell_in, quality: quality) } let(:items) { [subject] } diff --git a/ruby/item.rb b/ruby/item.rb new file mode 100644 index 00000000..5e4f1e9a --- /dev/null +++ b/ruby/item.rb @@ -0,0 +1,13 @@ +class Item + attr_accessor :name, :sell_in, :quality + + def initialize(name:, sell_in:, quality:) + @name = name + @sell_in = sell_in + @quality = quality + end + + def to_s() + "#{@name}, #{@sell_in}, #{@quality}" + end +end diff --git a/ruby/item_spec.rb b/ruby/item_spec.rb new file mode 100644 index 00000000..01aa4ee1 --- /dev/null +++ b/ruby/item_spec.rb @@ -0,0 +1,15 @@ +require File.join(File.dirname(__FILE__), 'item') + +RSpec.describe Item do + let(:item) do + described_class.new( + name: 'a', + sell_in: 0, + quality: 0, + ) + end + + describe '#to_s' do + it { expect(item.to_s).to eq('a, 0, 0') } + end +end