From 0f683493b0ba974eb207e04263d1cfcb66302458 Mon Sep 17 00:00:00 2001 From: Cyril Lepagnot Date: Tue, 26 Sep 2017 10:05:10 +0200 Subject: [PATCH] Move item to another item.rb --- ruby/gilded_rose.rb | 14 -------------- ruby/gilded_rose_spec.rb | 3 ++- ruby/item.rb | 13 +++++++++++++ ruby/item_spec.rb | 15 +++++++++++++++ 4 files changed, 30 insertions(+), 15 deletions(-) create mode 100644 ruby/item.rb create mode 100644 ruby/item_spec.rb 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