mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 22:41:30 +00:00
Added extension to to make it easier to test updates to quality
This commit is contained in:
parent
d5c6b9f9ce
commit
95946cf453
@ -82,16 +82,9 @@ class AdvancedRules: XCTestCase {
|
|||||||
let backstagePassLessThan5Days = Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 5, quality: 20)
|
let backstagePassLessThan5Days = Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 5, quality: 20)
|
||||||
let backstagePassExpired = Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 0, quality: 20)
|
let backstagePassExpired = Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 0, quality: 20)
|
||||||
|
|
||||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassMoreThan10Days, quality: 21))
|
XCTAssertTrue(backstagePassMoreThan10Days.updated(hasExpectedQuality: 21))
|
||||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassLessThan10Days, quality: 22))
|
XCTAssertTrue(backstagePassLessThan10Days.updated(hasExpectedQuality: 22))
|
||||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassLessThan5Days, quality: 23))
|
XCTAssertTrue(backstagePassLessThan5Days.updated(hasExpectedQuality: 23))
|
||||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassExpired, quality: 0))
|
XCTAssertTrue(backstagePassExpired.updated(hasExpectedQuality: 0))
|
||||||
}
|
|
||||||
|
|
||||||
private func hasExpectedQuality(item: Item, quality: Int) -> Bool {
|
|
||||||
let system = GildedRose(items: [item])
|
|
||||||
system.updateQuality()
|
|
||||||
|
|
||||||
return item.quality == quality
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
18
swift/Tests/GildedRoseTests/TestItem.swift
Normal file
18
swift/Tests/GildedRoseTests/TestItem.swift
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
//
|
||||||
|
// TestItem.swift
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// Created by Lucas van Dongen on 23/11/2020.
|
||||||
|
//
|
||||||
|
|
||||||
|
@testable import GildedRose
|
||||||
|
import Foundation
|
||||||
|
|
||||||
|
extension Item {
|
||||||
|
func updated(hasExpectedQuality quality: Int) -> Bool {
|
||||||
|
let system = GildedRose(items: [self])
|
||||||
|
system.updateQuality()
|
||||||
|
|
||||||
|
return self.quality == quality
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user