Add Unit Testing for automatic test with gitHub Action

This commit is contained in:
gabipédia 2026-06-04 15:23:56 +02:00
parent 6910a62675
commit 04d48a7536

View File

@ -10,7 +10,71 @@ class GildedRoseTest(unittest.TestCase):
gilded_rose = GildedRose(items)
gilded_rose.update_quality()
self.assertEqual("fixme", items[0].name)
def test_classic_item(self):
item = Item("Elixir of the Mongoose", 8, 7)
gilded_rose = GildedRose([item])
# One day after
gilded_rose.update_quality()
self.assertEqual(item.sell_in, 7)
self.assertEqual(item.quality, 6)
def test_sulfuras(self):
item = Item("Sulfuras, Hand of Ragnaros", 0, 80)
gilded_rose = GildedRose([item])
# One day after
gilded_rose.update_quality()
self.assertEqual(item.sell_in, 0)
self.assertEqual(item.quality, 80)
def test_aged_brie(self):
item = Item("Aged Brie", 1, 2)
gilded_rose = GildedRose([item])
# One day after
gilded_rose.update_quality()
self.assertEqual(item.sell_in, 0)
self.assertEqual(item.quality, 3)
# Two days after
gilded_rose.update_quality()
self.assertEqual(item.sell_in, -1)
self.assertEqual(item.quality, 5)
def test_backstage_passes(self):
items = [Item("Backstage passes to a TAFKAL80ETC concert", 11, 12),
Item("Backstage passes to a TAFKAL80ETC concert", 1, 45)]
gilded_rose = GildedRose([item])
# One day after
gilded_rose.update_quality()
self.assertEqual(items[0].sell_in, 10)
self.assertEqual(items[0].quality, 13)
self.assertEqual(items[1].sell_in, 0)
self.assertEqual(items[1].quality, 48)
# Two days after
gilded_rose.update_quality()
self.assertEqual(items[0].sell_in, 9)
self.assertEqual(items[0].quality, 15)
self.assertEqual(items[1].sell_in, -1)
self.assertEqual(items[1].quality, 0)
def test_conjured_item(self):
item = Item("Conjured Mana Cake", 1, 24)
gilded_rose = GildedRose([item])
# One day after
gilded_rose.update_quality()
self.assertEqual(item.sell_in, 0)
self.assertEqual(item.quality, 22)
# Two days after
gilded_rose.update_quality()
self.assertEqual(item.sell_in, -1)
self.assertEqual(item.quality, 18)
if __name__ == '__main__':
unittest.main()