mirror of
https://github.com/emilybache/GildedRose-Refactoring-Kata.git
synced 2026-02-15 06:21:29 +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 backstagePassExpired = Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 0, quality: 20)
|
||||
|
||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassMoreThan10Days, quality: 21))
|
||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassLessThan10Days, quality: 22))
|
||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassLessThan5Days, quality: 23))
|
||||
XCTAssertTrue(hasExpectedQuality(item: backstagePassExpired, quality: 0))
|
||||
}
|
||||
|
||||
private func hasExpectedQuality(item: Item, quality: Int) -> Bool {
|
||||
let system = GildedRose(items: [item])
|
||||
system.updateQuality()
|
||||
|
||||
return item.quality == quality
|
||||
XCTAssertTrue(backstagePassMoreThan10Days.updated(hasExpectedQuality: 21))
|
||||
XCTAssertTrue(backstagePassLessThan10Days.updated(hasExpectedQuality: 22))
|
||||
XCTAssertTrue(backstagePassLessThan5Days.updated(hasExpectedQuality: 23))
|
||||
XCTAssertTrue(backstagePassExpired.updated(hasExpectedQuality: 0))
|
||||
}
|
||||
}
|
||||
|
||||
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