First of all, sorry for not explaining up front how tests are run. For a faster run of just this file, use:

    bundle exec cucumber features/ci_status.feature

This is after you've done `bundle install` initially.

Now, you should know that all tests never hit the actual GitHub.com API. All the data returned is fake. You should keep using the "michiels/pencilbox" repo, as that's what set up in the Background section of the current file and affects all tests, including new ones you add.

The fake response from the API is [defined here](https://github.com/github/hub/blob/8909a3b2f0d7a83b1169d2ac26d371297388c738/features/steps.rb#L177-179). In these lines, observe the payload that only has a `:state` key. A real API response would have many more keys in the data, but we're only defining `:state` here since it's the only key we're reading. Now that we're reading `target_url` as well, you should add that value to the fake payload. Something like:

```rb
step %{the remote commit states of "#{proj}" "#{ref}" are:}, <<-DATA
  [ {
    :state => "#{status}",
    :target_url => "https://travis-ci.org/github/hub/builds/13187329"
  } ]
DATA

Sorry that this is so confusing :)