mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2025-12-12 04:12:13 +00:00
69 lines
2.1 KiB
Ruby
69 lines
2.1 KiB
Ruby
require 'minitest/autorun'
|
|
require_relative 'gilded_rose'
|
|
|
|
class TestGildedRose < Minitest::Test
|
|
def test_update_quality_regular_item
|
|
item = Item.new('Regular Item', 5, 10)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 9, item.quality
|
|
assert_equal 4, item.sell_in
|
|
end
|
|
|
|
def test_update_quality_negative_sell_in_regular_item
|
|
item = Item.new('Regular Item', 0, 10)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 8, item.quality
|
|
end
|
|
|
|
def test_update_quality_aged_brie
|
|
item = Item.new('Aged Brie', 5, 10)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 11, item.quality
|
|
end
|
|
|
|
def test_update_quality_max_quality_aged_brie
|
|
item = Item.new('Aged Brie', 5, 50)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 50, item.quality
|
|
end
|
|
|
|
def test_update_quality_backstage_passes_approaching
|
|
item = Item.new('Backstage passes to a TAFKAL80ETC concert', 11, 20)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 21, item.quality
|
|
end
|
|
|
|
def test_update_quality_backstage_passes_sell_in_10_or_less
|
|
item = Item.new('Backstage passes to a TAFKAL80ETC concert', 10, 20)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 22, item.quality
|
|
end
|
|
|
|
def test_update_quality_backstage_passes_sell_in_5_or_less
|
|
item = Item.new('Backstage passes to a TAFKAL80ETC concert', 5, 20)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 23, item.quality
|
|
end
|
|
|
|
def test_update_quality_backstage_passes_after_concert
|
|
item = Item.new('Backstage passes to a TAFKAL80ETC concert', 0, 20)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 0, item.quality
|
|
end
|
|
|
|
def test_update_quality_sulfuras
|
|
item = Item.new('Sulfuras, Hand of Ragnaros', 5, 80)
|
|
gilded_rose = GildedRose.new([item])
|
|
gilded_rose.update_quality
|
|
assert_equal 80, item.quality
|
|
end
|
|
end
|