diff --git a/swift/.gitignore b/swift/.gitignore deleted file mode 100644 index 6ea2fdde..00000000 --- a/swift/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -.DS_Store -/.build -/Packages -/*.xcodeproj -xcuserdata/ -DerivedData/ -.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata \ No newline at end of file diff --git a/swift/Package.swift b/swift/Package.swift deleted file mode 100644 index f52c7bb1..00000000 --- a/swift/Package.swift +++ /dev/null @@ -1,27 +0,0 @@ -// swift-tools-version:5.5 - -import PackageDescription - -let package = Package( - name: "GildedRose", - products: [ - .library( - name: "GildedRose", - targets: ["GildedRose"] - ), - ], - targets: [ - .target( - name: "GildedRose", - dependencies: [] - ), - .target( - name: "GildedRoseApp", - dependencies: ["GildedRose"] - ), - .testTarget( - name: "GildedRoseTests", - dependencies: ["GildedRose"] - ), - ] -) diff --git a/swift/README.md b/swift/README.md deleted file mode 100644 index 60168d5b..00000000 --- a/swift/README.md +++ /dev/null @@ -1,12 +0,0 @@ -## Build and test using any of the following - -Command line: -- `swift test` - -Xcode: -- Open this "swift" folder to open package -- In the Xcode menu, select Product > Test to run tests - -AppCode: -- Open this "swift" folder to open package -- Select "GildedRoseTests" configuration and run diff --git a/swift/Sources/GildedRose/GildedRose.swift b/swift/Sources/GildedRose/GildedRose.swift deleted file mode 100644 index ea0aa861..00000000 --- a/swift/Sources/GildedRose/GildedRose.swift +++ /dev/null @@ -1,59 +0,0 @@ -public class GildedRose { - var items: [Item] - - public init(items: [Item]) { - self.items = items - } - - public func updateQuality() { - for i in 0 ..< items.count { - if items[i].name != "Aged Brie", items[i].name != "Backstage passes to a TAFKAL80ETC concert" { - if items[i].quality > 0 { - if items[i].name != "Sulfuras, Hand of Ragnaros" { - items[i].quality = items[i].quality - 1 - } - } - } else { - if items[i].quality < 50 { - items[i].quality = items[i].quality + 1 - - if items[i].name == "Backstage passes to a TAFKAL80ETC concert" { - if items[i].sellIn < 11 { - if items[i].quality < 50 { - items[i].quality = items[i].quality + 1 - } - } - - if items[i].sellIn < 6 { - if items[i].quality < 50 { - items[i].quality = items[i].quality + 1 - } - } - } - } - } - - if items[i].name != "Sulfuras, Hand of Ragnaros" { - items[i].sellIn = items[i].sellIn - 1 - } - - if items[i].sellIn < 0 { - if items[i].name != "Aged Brie" { - if items[i].name != "Backstage passes to a TAFKAL80ETC concert" { - if items[i].quality > 0 { - if items[i].name != "Sulfuras, Hand of Ragnaros" { - items[i].quality = items[i].quality - 1 - } - } - } else { - items[i].quality = items[i].quality - items[i].quality - } - } else { - if items[i].quality < 50 { - items[i].quality = items[i].quality + 1 - } - } - } - } - } -} diff --git a/swift/Sources/GildedRose/Item.swift b/swift/Sources/GildedRose/Item.swift deleted file mode 100644 index eb717bbb..00000000 --- a/swift/Sources/GildedRose/Item.swift +++ /dev/null @@ -1,17 +0,0 @@ -public class Item { - public var name: String - public var sellIn: Int - public var quality: Int - - public init(name: String, sellIn: Int, quality: Int) { - self.name = name - self.sellIn = sellIn - self.quality = quality - } -} - -extension Item: CustomStringConvertible { - public var description: String { - name + ", " + String(sellIn) + ", " + String(quality) - } -} diff --git a/swift/Sources/GildedRoseApp/main.swift b/swift/Sources/GildedRoseApp/main.swift deleted file mode 100644 index edd7dc13..00000000 --- a/swift/Sources/GildedRoseApp/main.swift +++ /dev/null @@ -1,31 +0,0 @@ -import GildedRose - -let items = [ - Item(name: "+5 Dexterity Vest", sellIn: 10, quality: 20), - Item(name: "Aged Brie", sellIn: 2, quality: 0), - Item(name: "Elixir of the Mongoose", sellIn: 5, quality: 7), - Item(name: "Sulfuras, Hand of Ragnaros", sellIn: 0, quality: 80), - Item(name: "Sulfuras, Hand of Ragnaros", sellIn: -1, quality: 80), - Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 15, quality: 20), - Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 10, quality: 49), - Item(name: "Backstage passes to a TAFKAL80ETC concert", sellIn: 5, quality: 49), - // this conjured item does not work properly yet - Item(name: "Conjured Mana Cake", sellIn: 3, quality: 6), -] - -let app = GildedRose(items: items) - -var days = 2 -if CommandLine.argc > 1 { - days = Int(CommandLine.arguments[1])! + 1 -} - -for i in 0 ..< days { - print("-------- day \(i) --------") - print("name, sellIn, quality") - for item in items { - print(item) - } - print("") - app.updateQuality() -} diff --git a/swift/Tests/GildedRoseTests/GildedRoseTests.swift b/swift/Tests/GildedRoseTests/GildedRoseTests.swift deleted file mode 100644 index 2241d23a..00000000 --- a/swift/Tests/GildedRoseTests/GildedRoseTests.swift +++ /dev/null @@ -1,11 +0,0 @@ -@testable import GildedRose -import XCTest - -class GildedRoseTests: XCTestCase { - func testFoo() throws { - let items = [Item(name: "foo", sellIn: 0, quality: 0)] - let app = GildedRose(items: items) - app.updateQuality() - XCTAssertEqual(app.items[0].name, "fixme") - } -}