GildedRose-Refactoring-Kata/swift/Sources/GildedRose/ItemQualityUpdater.swift
2020-08-17 20:14:47 +02:00

37 lines
729 B
Swift

//
// File.swift
//
//
// Created by Manali Mogre on 17/08/2020.
//
import Foundation
protocol ItemQualityUpdater: CustomisedItem {
}
extension ItemQualityUpdater {
var isItemUnderHighestQuality: Bool {
return item.quality < ValueConstants.kHightestQualityValue
}
var isItemMoreThanLowestQuality: Bool {
return item.quality > ValueConstants.kLowestQualityValue
}
func reduceItemQuality(by value:Int) {
item.quality -= value
}
func increaseItemQuality(by value:Int) {
item.quality += value
}
func setItemQuality(to value: Int){
item.quality = value
}
}
typealias ItemStateUpdater = ItemSellInUpdater & ItemQualityUpdater