1

After following the fast track setup guide for calabash-ios without any issues I receive an error when trying to run cucumber in the project folder. I receive the following error with verbose and backtrack flags

Code:
  * features/support/env.rb
  * features/support/01_launch.rb
  * features/support/02_pre_stop_hooks.rb
  * features/step_definitions/calabash_steps.rb
  * features/step_definitions/my_first_steps.rb

Features:
  * features/my_first.feature
Parsing feature files took 0m0.003s

Feature: Running a test
  As an iOS developer
  I want to have a sample feature file
  So I can begin testing quickly

  Scenario: Example steps                            # features/my_first.feature:6
  invalid byte sequence in UTF-8 (ArgumentError)
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop/instruments.rb:162:in `split'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop/instruments.rb:162:in `block in pids_from_ps_output'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop/instruments.rb:161:in `map'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop/instruments.rb:161:in `pids_from_ps_output'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop/instruments.rb:15:in `instruments_pids'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop/instruments.rb:39:in `kill_instruments'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop/core.rb:178:in `run_with_options'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/run_loop-1.4.1/lib/run_loop.rb:82:in `run'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launcher.rb:755:in `block in new_run_loop'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launcher.rb:753:in `times'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launcher.rb:753:in `new_run_loop'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/calabash-cucumber-0.14.3/lib/calabash-cucumber/launcher.rb:631:in `relaunch'
  /Users/magnusm/Developer/Aubjorg-3.6_UITEST/Audbjorg/features/support/01_launch.rb:27:in `block in <top (required)>'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/core_ext/instance_exec.rb:48:in `instance_exec'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/core_ext/instance_exec.rb:48:in `block in cucumber_instance_exec'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/core_ext/instance_exec.rb:69:in `cucumber_run_with_backtrace_filtering'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/core_ext/instance_exec.rb:36:in `cucumber_instance_exec'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/rb_support/rb_hook.rb:14:in `invoke'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:114:in `invoke'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:102:in `block in execute_before'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:101:in `each'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:101:in `execute_before'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:15:in `before'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:112:in `block in fire_hook'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:111:in `each'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:111:in `fire_hook'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:107:in `before'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:98:in `before_and_after'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:82:in `block in with_hooks'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:120:in `call'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:120:in `block (3 levels) in around'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:9:in `block in around'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:97:in `call'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:97:in `execute_around'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/language_support/language_methods.rb:8:in `around'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:119:in `block (2 levels) in around'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:123:in `call'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:123:in `around'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:94:in `around'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:81:in `with_hooks'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:13:in `execute'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/scenario.rb:32:in `block in accept'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/scenario.rb:79:in `with_visitor'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/scenario.rb:31:in `accept'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:58:in `block in visit_feature_element'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:170:in `broadcast'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:57:in `visit_feature_element'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/feature.rb:38:in `block in accept'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/feature.rb:37:in `each'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/feature.rb:37:in `accept'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:27:in `block in visit_feature'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:170:in `broadcast'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:26:in `visit_feature'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/features.rb:28:in `block in accept'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/features.rb:17:in `each'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/features.rb:17:in `each'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/features.rb:27:in `accept'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:21:in `block in visit_features'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:170:in `broadcast'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/ast/tree_walker.rb:20:in `visit_features'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:49:in `run!'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/lib/cucumber/cli/main.rb:47:in `execute!'
  /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/cucumber-1.3.20/bin/cucumber:13:in `<top (required)>'
  /usr/local/var/rbenv/versions/2.2.3/bin/cucumber:23:in `load'
  /usr/local/var/rbenv/versions/2.2.3/bin/cucumber:23:in `<main>'
    Given I am on the Welcome Screen                 # features/step_definitions/my_first_steps.rb:1
    Then I swipe left                                # calabash-cucumber-0.14.3/features/step_definitions/calabash_steps.rb:222
    And I wait until I don't see "Please swipe left" # calabash-cucumber-0.14.3/features/step_definitions/calabash_steps.rb:158
    And take picture                                 # calabash-cucumber-0.14.3/features/step_definitions/calabash_steps.rb:217

Failing Scenarios:
cucumber features/my_first.feature:6 # Scenario: Example steps

1 scenario (1 failed)
4 steps (4 skipped)
0m0.226s

How can I solve this issue ?

  • What is the output of $ xcrun instruments -s devices ? Are there any UTF-8 characters? Odd spaces? – jmoody Sep 03 '15 at 05:03
  • Is this the same issue and poster as: https://groups.google.com/forum/?fromgroups=#!topic/calabash-ios/hgDcmHNxXZ0 ? – jmoody Sep 03 '15 at 06:47
  • Not the same poster but similar issue. – Magnus Olafur Sep 07 '15 at 08:22
  • The device list does not contain any odd characters or spaces. The local of the computer is Icelandic and the language is English. – Magnus Olafur Sep 07 '15 at 08:40
  • I really want to get to the bottom of this. We've had several users report problems like this but have never been able to reproduce. Is there any chance you use tmate and would be willing to a pairing session to figure out the problem? If not, can you try to pipe the output of `xcrun instruments -s devices` to a plain text file, zip it, and email it to me? You can contact me via email: joshuajmoody@gmail.com. – jmoody Sep 07 '15 at 09:06
  • Magnus, if you have a moment can you give me the output of: `$ locale` – jmoody Sep 10 '15 at 23:12

1 Answers1

0

UPDATE Fixed in run-loop develop.

There is a bug in run-loop.

"Dilbert’s MacBook Pro [<UDID>]"

$ perl -ane '{ if(m/[[:^ascii:]]/) { print  } }' devices.txt
Dilbert’s MacBook Pro [<UDID>]

The apostrophe in that string is causing the problem. It is a UTF8 character and not ASCII.

Thanks to Magnus Olafur for helping me track this down.

Community
  • 1
  • 1
jmoody
  • 2,480
  • 1
  • 16
  • 22