Thanks Driven Life

日々是感謝

Turnip 1.2.2 リリースされました

Release v1.2.2: Version 1.2.2 · jnicklas/turnip

簡単に変更点を述べていきます

Using multibyte characters for alternative words

Turnip では Step 定義の際にスラッシュ区切りで単語を記述すると、区切りの後者の単語が指定された時に 括弧で指定された文字が付与されたステップとして読み込むことができる。日本語でおk

See: https://github.com/jnicklas/turnip#placeholders

つまり

step "there is/are :count monster(s)" do |count|
  @monsters = Array.new(count) { Monster.new }
end

これが

When there is 1 monster
When there are 3 monsters

のどちらでも使えるようになる、という機能である。

1.2.1 までは、 スラッシュ区切りを行うステップ名 にマルチバイトを使えなかった(定義しても No such step って言われてた)が、 1.2.2 で使えるようになりました、というお話です。

たとえばこんな感じ

step '私/俺 は明日で :age 歳になる(ぜ)' do |age|
  age.should eq "30"
end

これが

When 私 は明日で "30" 歳になる
When 俺 は明日で "30" 歳になるぜ

として使えるようになったとのことです。

Substitution widh DocString in Scenario Outlines

Cucumber でおなじみ?の Substitution 機能は、Turnip でも Table や Step には使えましたが、1.2.2 で DocString にも対応した、というお話です。

Scenario Outline: Email confirmation
  Given I have a user account with my name "Jojo Binks"
  When an Admin grants me <Role> rights
  Then I should receive an email with the body:
    """
    Dear Jojo Binks,
    You have been granted <Role> rights.  You are <details>. Please be responsible.
    -The Admins
    """
  Examples:
    |  Role     | details                                         |
    |  Manager  | now able to manage your employee accounts       |
    |  Admin    | able to manage any user account on the system   |

便利

その他 Bug fixes

RSpec 3 対応がいくつか行われました。 まだまだでてきそうなので都度直していきたい感じです