Quickをとりあえず試してみる


インストールー

インストールは3ステップ

  1. Quickリポジトリのclone
  2. テストターゲットにQuick.xcodeprojand Nimble.xcodeprojに追加する
  3. Quick.frameworkNimble.xcodeprojをリンクする

Quickをgit clone

$ git clone [email protected]:modocache/Quick.git

適当にプロジェクトを作るる

テストターゲットにQuick.xcodeprojand Nimble.xcodeprojに追加するるる


Quick.frameworkNimble.xcodeprojをリンクするrurururu

それぞれ、iOS用とMac用があるので間違えないように。



テストするモデルのクラス

マスコット的なあれがイルカみたいなので。

class Dolphin {
    let name: String
    let age: Int

    init(name: String, age: Int) {
        self.name = name
        self.age = age
    }

    func tellYourName() -> String{
        return self.name
    }

    func areYouOlderThan(age: Int) -> Bool {
        return self.age > age
    }
}

イルカは賢いですね!!!

じゃあspecを書いてみます

QuickExampleSpec.swiftというファイルを追加しました。

中身はこんなです。デフォルトのテストのコードは捨てました。

class DolphinSpec: QuickSpec {
    override func spec() {
        describe("a dolphin") {
            var dolphin: Dolphin?
            beforeEach { dolphin = Dolphin(name: "Nagori Yuki", age: 13) }

            it("tells us his name") {
                expect(dolphin!.tellYourName()).to.equal("Nagori Yuki")
            }

            it("tells us if he is older") {
                expect(dolphin!.areYouOlderThan(10)).to.beTrue()
            }
        }
    }
}

実行

⌘ + U

RSpecとかそれインスパイア系のBDDフレームワークを使ったことがあれば、
一瞬で理解できるでしょう。

overrideするメソッド名が3日前にやったときと変わってて動かなかったりして、
生まれたてで日々変わっていってるみたいなので、ちゃんと使うのは落ち着いてからでもいいかなー。