Merge pull request #138 from jonreid/master

Update Swift to work with latest package manager
This commit is contained in:
Emily Bache 2020-01-06 10:50:26 +01:00 committed by GitHub
commit 3e0d5e39dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 36 additions and 29 deletions

1
swift/.gitignore vendored
View File

@ -2,3 +2,4 @@
/.build /.build
/Packages /Packages
/*.xcodeproj /*.xcodeproj
xcuserdata/

View File

@ -1,5 +1,23 @@
// swift-tools-version:5.1
import PackageDescription import PackageDescription
let package = Package( let package = Package(
name: "GildedRose" name: "GildedRose",
products: [
.library(
name: "GildedRose",
targets: ["GildedRose"]),
],
targets: [
.target(
name: "GildedRose",
dependencies: []),
.target(
name: "GildedRoseApp",
dependencies: ["GildedRose"]),
.testTarget(
name: "GildedRoseTests",
dependencies: ["GildedRose"]),
]
) )

View File

@ -1,13 +1,11 @@
public class GildedRose { public class GildedRose {
var items:[Item] var items:[Item]
required public init(items:[Item]) { public init(items:[Item]) {
self.items = items self.items = items
} }
public func updateQuality() { public func updateQuality() {
for i in 0..<items.count { for i in 0..<items.count {
if (items[i].name != "Aged Brie" && items[i].name != "Backstage passes to a TAFKAL80ETC concert") { if (items[i].name != "Aged Brie" && items[i].name != "Backstage passes to a TAFKAL80ETC concert") {
if (items[i].quality > 0) { if (items[i].quality > 0) {

View File

@ -1,4 +1,3 @@
public class Item { public class Item {
public var name: String public var name: String
public var sellIn: Int public var sellIn: Int

View File

@ -1,3 +1,4 @@
import GildedRose
let items = [ let items = [
Item(name: "+5 Dexterity Vest", sellIn: 10, quality: 20), Item(name: "+5 Dexterity Vest", sellIn: 10, quality: 20),
@ -18,7 +19,6 @@ if (CommandLine.argc > 1) {
days = Int(CommandLine.arguments[1])! + 1 days = Int(CommandLine.arguments[1])! + 1
} }
for i in 0..<days { for i in 0..<days {
print("-------- day \(i) --------"); print("-------- day \(i) --------");
print("name, sellIn, quality"); print("name, sellIn, quality");

View File

@ -0,0 +1,9 @@
import XCTest
#if !canImport(ObjectiveC)
public func allTests() -> [XCTestCaseEntry] {
return [
testCase(GildedRoseTests.allTests),
]
}
#endif

View File

@ -1,7 +1,7 @@
@testable import GildedRoseTestSuit
import XCTest import XCTest
XCTMain([ import GildedRoseTests
testCase(GildedRoseTests.allTests),
]) var tests = [XCTestCaseEntry]()
tests += GildedRoseTests.allTests()
XCTMain(tests)

View File

@ -1,18 +0,0 @@
@testable import GildedRose
import XCTest
class GildedRoseTests: XCTestCase {
func testFoo() {
let items = [Item(name: "foo", sellIn: 0, quality: 0)]
let app = GildedRose(items: items);
app.updateQuality();
XCTAssertEqual("fixme", app.items[0].name);
}
static var allTests : [(String, (GildedRoseTests) -> () throws -> Void)] {
return [
("testFoo", testFoo),
]
}
}