From 04d48a7536746842f82b2f1258737b0314e87fdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?gabip=C3=A9dia?= Date: Thu, 4 Jun 2026 15:23:56 +0200 Subject: [PATCH] Add Unit Testing for automatic test with gitHub Action --- python/tests/test_gilded_rose.py | 64 ++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/python/tests/test_gilded_rose.py b/python/tests/test_gilded_rose.py index 1c92f638..f588ad5a 100644 --- a/python/tests/test_gilded_rose.py +++ b/python/tests/test_gilded_rose.py @@ -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()