aslakhellesoy-cucumber 0.3.7.4 → 0.3.7.5
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +2 -1
- data/Manifest.txt +1 -1
- data/bin/cucumber +1 -1
- data/features/html_formatter/a.html +5 -5
- data/lib/cucumber/rspec_neuter.rb +23 -0
- data/lib/cucumber/version.rb +1 -1
- data/rails_generators/cucumber/templates/cucumber_environment.rb +4 -4
- metadata +2 -2
- data/lib/cucumber/rspec_option_parser_detector.rb +0 -40
data/History.txt
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
=== New Features
|
4
4
|
* Rails cucumber generator sets up default gem dependencies in cucumber environment.
|
5
5
|
* Better error if RSpec's option parser is "accidentally" loaded. (Aslak Hellesøy)
|
6
|
-
*
|
6
|
+
* The duration of a run is reported by formatters - same format as the Linux time command (#228 Aslak Hellesøy)
|
7
7
|
* Scenario and ExampleRow objects (passed to Before and After hooks) have #name and #line methods (#316 Aslak Hellesøy)
|
8
8
|
* Rails generator creates a cucumber environment file to avoid potential cache_classes conflicts in test.rb (#165, Ben Mabey)
|
9
9
|
* HTML formatter renders @tags (but the CSS is still ugly)
|
@@ -12,6 +12,7 @@
|
|
12
12
|
* The Cucumber Rake task will again fork by default (as before 0.3.4). Forking must be turned off explicitly. (Aslak Hellesøy)
|
13
13
|
|
14
14
|
=== Bugfixes
|
15
|
+
* Better coexistence with RSpec - Cucumber now *neuters* the part of RSpec that tries to parse ARGV.
|
15
16
|
* The differ= exception is gone (#325, #340 Aslak Hellesøy)
|
16
17
|
|
17
18
|
== 0.3.7 2009-05-22
|
data/Manifest.txt
CHANGED
@@ -326,7 +326,7 @@ lib/cucumber/platform.rb
|
|
326
326
|
lib/cucumber/rails/rspec.rb
|
327
327
|
lib/cucumber/rails/world.rb
|
328
328
|
lib/cucumber/rake/task.rb
|
329
|
-
lib/cucumber/
|
329
|
+
lib/cucumber/rspec_neuter.rb
|
330
330
|
lib/cucumber/step_definition.rb
|
331
331
|
lib/cucumber/step_match.rb
|
332
332
|
lib/cucumber/step_mother.rb
|
data/bin/cucumber
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
# Add '.rb' to work around a bug in IronRuby's File#dirname
|
3
3
|
$:.unshift(File.dirname(__FILE__ + '.rb') + '/../lib') unless $:.include?(File.dirname(__FILE__ + '.rb') + '/../lib')
|
4
4
|
|
5
|
-
require 'cucumber/
|
5
|
+
require 'cucumber/rspec_neuter'
|
6
6
|
require 'cucumber/cli/main'
|
7
7
|
begin
|
8
8
|
# The dup is to keep ARGV intact, so that tools like ruby-debug can respawn.
|
@@ -444,7 +444,7 @@ Then I should have '<count>' cukes </div>
|
|
444
444
|
<td class="skipped" id="row_10_0">10</td>
|
445
445
|
</tr>
|
446
446
|
<tr>
|
447
|
-
<td
|
447
|
+
<td class="failed" colspan="1">
|
448
448
|
<pre>
|
449
449
|
FAIL (RuntimeError)
|
450
450
|
./features/step_definitions/sample_steps.rb:2:in `flunker'
|
@@ -716,7 +716,7 @@ Given <other_state> without a table </div>
|
|
716
716
|
<td class="skipped" id="row_10_1">passing</td>
|
717
717
|
</tr>
|
718
718
|
<tr>
|
719
|
-
<td
|
719
|
+
<td class="failed" colspan="2">
|
720
720
|
<pre>
|
721
721
|
Undefined step: "missing without a table" (Cucumber::Undefined)
|
722
722
|
features/outline_sample.feature:6:in `Given <state> without a table' </pre>
|
@@ -731,7 +731,7 @@ features/outline_sample.feature:6:in `Given <state> without a table'
|
|
731
731
|
<td class="skipped" id="row_12_1">passing</td>
|
732
732
|
</tr>
|
733
733
|
<tr>
|
734
|
-
<td
|
734
|
+
<td class="failed" colspan="2">
|
735
735
|
<pre>
|
736
736
|
FAIL (RuntimeError)
|
737
737
|
./features/step_definitions/sample_steps.rb:2:in `flunker'
|
@@ -864,7 +864,7 @@ Given <state> without a table </div>
|
|
864
864
|
<td class="failed" id="row_16_0">failing</td>
|
865
865
|
</tr>
|
866
866
|
<tr>
|
867
|
-
<td
|
867
|
+
<td class="failed" colspan="1">
|
868
868
|
<pre>
|
869
869
|
FAIL (RuntimeError)
|
870
870
|
./features/step_definitions/sample_steps.rb:2:in `flunker'
|
@@ -918,7 +918,7 @@ Given <state> without a table </div>
|
|
918
918
|
<td class="failed" id="row_32_0">failing</td>
|
919
919
|
</tr>
|
920
920
|
<tr>
|
921
|
-
<td
|
921
|
+
<td class="failed" colspan="1">
|
922
922
|
<pre>
|
923
923
|
FAIL (RuntimeError)
|
924
924
|
./features/step_definitions/sample_steps.rb:2:in `flunker'
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'optparse'
|
2
|
+
|
3
|
+
module Spec
|
4
|
+
module Runner
|
5
|
+
# Neuters RSpec's option parser.
|
6
|
+
# (RSpec's option parser tries to parse ARGV, which
|
7
|
+
# will fail when running cucumber)
|
8
|
+
class OptionParser < ::OptionParser
|
9
|
+
NEUTERED_RSPEC = Object.new
|
10
|
+
def NEUTERED_RSPEC.method_missing(m, *args); self; end
|
11
|
+
|
12
|
+
def self.method_added(m)
|
13
|
+
unless @__neutering_rspec
|
14
|
+
@__neutering_rspec = true
|
15
|
+
define_method(m) do |*a|
|
16
|
+
NEUTERED_RSPEC
|
17
|
+
end
|
18
|
+
@__neutering_rspec = false
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
data/lib/cucumber/version.rb
CHANGED
@@ -15,7 +15,7 @@ config.action_controller.allow_forgery_protection = false
|
|
15
15
|
# ActionMailer::Base.deliveries array.
|
16
16
|
config.action_mailer.delivery_method = :test
|
17
17
|
|
18
|
-
config.gem "cucumber", :lib => false,
|
19
|
-
config.gem "webrat", :lib => false,
|
20
|
-
config.gem "rspec", :lib => false,
|
21
|
-
config.gem "rspec-rails", :lib =>
|
18
|
+
config.gem "cucumber", :lib => false, :version => ">=<%= Cucumber::VERSION::STABLE_STRING %>"
|
19
|
+
config.gem "webrat", :lib => false, :version => ">=0.4.4"
|
20
|
+
config.gem "rspec", :lib => false, :version => ">=1.2.6"
|
21
|
+
config.gem "rspec-rails", :lib => 'spec/rails', :version => ">=1.2.6"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aslakhellesoy-cucumber
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.7.
|
4
|
+
version: 0.3.7.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- "Aslak Helles\xC3\xB8y"
|
@@ -403,7 +403,7 @@ files:
|
|
403
403
|
- lib/cucumber/rails/rspec.rb
|
404
404
|
- lib/cucumber/rails/world.rb
|
405
405
|
- lib/cucumber/rake/task.rb
|
406
|
-
- lib/cucumber/
|
406
|
+
- lib/cucumber/rspec_neuter.rb
|
407
407
|
- lib/cucumber/step_definition.rb
|
408
408
|
- lib/cucumber/step_match.rb
|
409
409
|
- lib/cucumber/step_mother.rb
|
@@ -1,40 +0,0 @@
|
|
1
|
-
require 'optparse'
|
2
|
-
|
3
|
-
module Spec
|
4
|
-
module Runner
|
5
|
-
# Detects if RSpec's option parser is loaded and raises an error
|
6
|
-
# if it is. (RSpec's option parser tries to parse ARGV, which
|
7
|
-
# will fail when running cucumber)
|
8
|
-
class OptionParser < ::OptionParser
|
9
|
-
def self.bail
|
10
|
-
raise <<-EOM
|
11
|
-
|
12
|
-
RSpec's 'spec/runner/option_parser' should *not* be loaded when you're running
|
13
|
-
Cucumber, but it seems it was loaded anyway. This is *not* a Cucumber bug.
|
14
|
-
Some other code is loading more RSpec code than it should. There can be several
|
15
|
-
reasons for this. The most common ones are:
|
16
|
-
|
17
|
-
1) Some of your own code does require 'spec'.
|
18
|
-
Use require 'spec/expectations' instead.
|
19
|
-
2) Some of your own code does require 'spec/rails'.
|
20
|
-
Use require 'spec/rails/expectations' instead.
|
21
|
-
3) Your Rails app's gem configuration is bad. Use
|
22
|
-
config.gem 'rspec', :lib => false
|
23
|
-
config.gem 'rspec-rails', :lib => false
|
24
|
-
4) Some other library you're using (indirectly)
|
25
|
-
does require 'spec/runner/option_parser'.
|
26
|
-
Analyze the stack trace below and get rid of it.
|
27
|
-
|
28
|
-
EOM
|
29
|
-
end
|
30
|
-
|
31
|
-
if method_defined?(:options)
|
32
|
-
bail
|
33
|
-
end
|
34
|
-
|
35
|
-
def self.method_added(*args)
|
36
|
-
bail
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|