From 7812fa72f908339248149856d2a66662f1d30604 Mon Sep 17 00:00:00 2001 From: iqbal201283 Date: Sun, 22 Jun 2025 13:48:37 +0530 Subject: [PATCH] Iqbal Refactoring --- python/gilded_rose.py | 79 ++++++++++++++++++++++++++----------------- 1 file changed, 48 insertions(+), 31 deletions(-) diff --git a/python/gilded_rose.py b/python/gilded_rose.py index 5bb24f62..750cf89d 100755 --- a/python/gilded_rose.py +++ b/python/gilded_rose.py @@ -1,40 +1,57 @@ # -*- coding: utf-8 -*- from items import Item -class GildedRose(object): +class BaseItemUpdater: + def __init__(self, item): + self.item = item - def __init__(self, items): - self.items = items + def update(self): + self.update_sell_in() + self.update_quality() + + def update_sell_in(self): + self.item.sell_in -= 1 def update_quality(self): - for item in self.items: - if item.name != "Aged Brie" and item.name != "Backstage passes to a TAFKAL80ETC concert": - if item.quality > 0: - if item.name != "Sulfuras, Hand of Ragnaros": - item.quality = item.quality - 1 - else: - if item.quality < 50: - item.quality = item.quality + 1 - if item.name == "Backstage passes to a TAFKAL80ETC concert": - if item.sell_in < 11: - if item.quality < 50: - item.quality = item.quality + 1 - if item.sell_in < 6: - if item.quality < 50: - item.quality = item.quality + 1 - if item.name != "Sulfuras, Hand of Ragnaros": - item.sell_in = item.sell_in - 1 - if item.sell_in < 0: - if item.name != "Aged Brie": - if item.name != "Backstage passes to a TAFKAL80ETC concert": - if item.quality > 0: - if item.name != "Sulfuras, Hand of Ragnaros": - item.quality = item.quality - 1 - else: - item.quality = item.quality - item.quality - else: - if item.quality < 50: - item.quality = item.quality + 1 + if self.item.quality > 0: + self.item.quality -= 1 + if self.item.sell_in < 0 and self.item.quality > 0: + self.item.quality -= 1 + +# class GildedRose(object): + +# def __init__(self, items): +# self.items = items + +# def update_quality(self): +# for item in self.items: +# if item.name != "Aged Brie" and item.name != "Backstage passes to a TAFKAL80ETC concert": +# if item.quality > 0: +# if item.name != "Sulfuras, Hand of Ragnaros": +# item.quality = item.quality - 1 +# else: +# if item.quality < 50: +# item.quality = item.quality + 1 +# if item.name == "Backstage passes to a TAFKAL80ETC concert": +# if item.sell_in < 11: +# if item.quality < 50: +# item.quality = item.quality + 1 +# if item.sell_in < 6: +# if item.quality < 50: +# item.quality = item.quality + 1 +# if item.name != "Sulfuras, Hand of Ragnaros": +# item.sell_in = item.sell_in - 1 +# if item.sell_in < 0: +# if item.name != "Aged Brie": +# if item.name != "Backstage passes to a TAFKAL80ETC concert": +# if item.quality > 0: +# if item.name != "Sulfuras, Hand of Ragnaros": +# item.quality = item.quality - 1 +# else: +# item.quality = item.quality - item.quality +# else: +# if item.quality < 50: +# item.quality = item.quality + 1 # class Item: