Rick DeNatale wrote:
On Mon, Apr 27, 2009 at 10:07 AM, aslak hellesoy
<aslak.helle...@gmail.com> wrote:
On Mon, Apr 27, 2009 at 3:47 PM, Rick DeNatale <rick.denat...@gmail.com>
wrote:
On Mon, Apr 27, 2009 at 8:13 AM, Rick DeNatale <rick.denat...@gmail.com>
wrote:
On Sun, Apr 26, 2009 at 11:38 PM, Ben Mabey <b...@benmabey.com> wrote:
Rick DeNatale wrote:
I finally plunked down for the beta RSpec bundle and I'm working
through the initial example. Although I'm a fairly experienced RSpec
user, I'm stlll learning new tricks.
Anyway, I'm going though the mastermind example, and everything is
going well, except that I decided to also try out the Textmate bundle
for Cucumber. I decided to use Ben Mabey's fork on github since it
seems to be the most evolved.
When I try to run a feature with cmd-R, instead of actually running I
see something like:
Running: cucumber
/Users/rick/mastermind/features/codebreaker_starts_game.feature
--format=html
false
Cucumber runs fine from bash.
Am I missing some setup?
Hmm.. that is odd. What version of Cucumber are you using? When you
run
that exact command from the shell does it output the HTML report?
I was runing 0.3.0 upgrading to 0.3.1 has the same result BUT
If I run that exact command
$ /Users/rick/mastermind/features/codebreaker_starts_game.feature
--format=html
-bash: /Users/rick/mastermind/features/codebreaker_starts_game.feature:
Permission denied
It's trying to run the feature as an executable directly it's not
running the cucumber executable!
Why it be doin dat?
Actually, I was misreading the output in the run window, which was
wrapping.
$ cucumber
/Users/rick/mastermind/features/codebreaker_starts_game.feature
--format=html false
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/step_mother.rb:125:in
`Given': Multiple step definitions have the same Regexp:
(Cucumber::Redundant)
features/step_definitions/mastermind.rb:13:in `/^I am not yet playing$/'
features/step_definitions/mastermind.rb:13:in `/^I am not yet playing$/'
from
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/step_mother.rb:124:in
`each'
from
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/step_mother.rb:124:in
`Given'
from ./features/step_definitions/mastermind.rb:13
from
/opt/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`gem_original_require'
from
/opt/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`polyglot_original_require'
from
/opt/local/lib/ruby/gems/1.8/gems/polyglot-0.2.5/lib/polyglot.rb:54:in
`require'
from
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/cli/main.rb:79:in
`require_files'
from
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/cli/main.rb:77:in
`each'
from
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/cli/main.rb:77:in
`require_files'
from
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/cli/main.rb:34:in
`execute!'
from
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/cli/main.rb:20:in
`execute'
from /Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/cucumber:6
from /opt/local/bin/cucumber:19:in `load'
from /opt/local/bin/cucumber:19
If I do this from the project directory:
$ cucumber features/codebreaker_starts_game.feature
Feature: Codebreaker starts game
As a Codebreaker
I want to start a game
So that I can break the code
Scenario: Start game #
features/codebreaker_starts_game.feature:5
Given I am not yet playing #
features/step_definitions/mastermind.rb:13
When I start a new game #
features/step_definitions/mastermind.rb:24
Then the game should say "Welcome to Mastermind!" #
features/step_definitions/mastermind.rb:28
And the game should say "Enter guess:" #
features/step_definitions/mastermind.rb:28
1 scenario
4 passed steps
Running under textmate, cucumber seems to be somehow convincing itself
that
features/step_definitions/mastermind.rb:13:in `/^I am not yet playing$/'
Duplicates itself?!?
What's happening is that the file containing step defs is being loaded
twice, and therefore you get dupe step defs. Not sure why that's happening
though...
Yes, I figured it was somehing like that. On a little more trial and
error, it appears that the bundle is adding false to the end of the
command string which is causing that steps def to be required
initially:
$ cucumber /Users/rick/mastermind/features/codebreaker_starts_game.feature
--format=html false -v
Ruby files required:
* /Users/rick/mastermind/features/support/env.rb
* ./features/support/env.rb
* ./lib/mastermind/game.rb
* /Users/rick/mastermind/features/step_definitions/mastermind.rb
/Users/rick/.gem/ruby/1.8/gems/cucumber-0.3.1/bin/../lib/cucumber/step_mother.rb:125:in
`Given': Multiple step definitions have the same Regexp:
(Cucumber::Redundant)
features/step_definitions/mastermind.rb:13:in `/^I am not yet playing$/'
features/step_definitions/mastermind.rb:13:in `/^I am not yet playing$/'
Haven't yet figured out where that false is coming from, somewhere in
runner.rb in the bundle
I don't think the 'false' is part of the command. That is the exit code
of the cucumber I think (well, the boolean representation of it). I'll
take a look at it though.
-Ben
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users