aslakhellesoy-cucumber 0.2.0.4 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,9 @@
1
- == 0.2.1 (In Git)
1
+ == 0.2.1 2009-03-25
2
+
3
+ This release fixes a few minor bugs and adds a couple of new features.
2
4
 
3
5
  == Bugfixes
6
+ * Fixed Cucumber, and rails controller error handling (#49 Matt Patterson)
4
7
  * HTML Formatter doesn't work correctly with scenario Outlines. (#260 Aslak Hellesøy)
5
8
  * After blocks are run in reverse order of registration. (#113 Aslak Hellesøy)
6
9
  * Snippets are showing 'Ands' (#249 Aslak Hellesøy)
@@ -302,18 +302,18 @@ Defined profiles in cucumber.yml:
302
302
  def cucumber_yml
303
303
  return @cucumber_yml if @cucumber_yml
304
304
  unless File.exist?('cucumber.yml')
305
- raise(YmlLoadError,"cucumber.yml was not found. Please refer to cucumber's documentaion on defining profiles in cucumber.yml. You must define a 'default' profile to use the cucumber command without any arguments.\nType 'cucumber --help' for usage.\n")
305
+ raise(YmlLoadError,"cucumber.yml was not found. Please refer to cucumber's documentation on defining profiles in cucumber.yml. You must define a 'default' profile to use the cucumber command without any arguments.\nType 'cucumber --help' for usage.\n")
306
306
  end
307
307
 
308
308
  require 'yaml'
309
309
  begin
310
310
  @cucumber_yml = YAML::load(IO.read('cucumber.yml'))
311
311
  rescue Exception => e
312
- raise(YmlLoadError,"cucumber.yml was found, but could not be parsed. Please refer to cucumber's documentaion on correct profile usage.\n")
312
+ raise(YmlLoadError,"cucumber.yml was found, but could not be parsed. Please refer to cucumber's documentation on correct profile usage.\n")
313
313
  end
314
314
 
315
315
  if @cucumber_yml.nil? || !@cucumber_yml.is_a?(Hash)
316
- raise(YmlLoadError,"cucumber.yml was found, but was blank or malformed. Please refer to cucumber's documentaion on correct profile usage.\n")
316
+ raise(YmlLoadError,"cucumber.yml was found, but was blank or malformed. Please refer to cucumber's documentation on correct profile usage.\n")
317
317
  end
318
318
 
319
319
  return @cucumber_yml
@@ -9,18 +9,6 @@ else
9
9
  end
10
10
  require 'test/unit/testresult'
11
11
 
12
- # These allow exceptions to come through as opposed to being caught and having non-helpful responses returned.
13
- ActionController::Base.class_eval do
14
- def rescue_action(exception)
15
- raise exception
16
- end
17
- end
18
- ActionController::Dispatcher.class_eval do
19
- def self.failsafe_response(output, status, exception = nil)
20
- raise exception
21
- end
22
- end
23
-
24
12
  # So that Test::Unit doesn't launch at the end - makes it think it has already been run.
25
13
  Test::Unit.run = true if Test::Unit.respond_to?(:run=)
26
14
 
@@ -66,6 +54,18 @@ module Cucumber #:nodoc:
66
54
  end
67
55
  end
68
56
 
57
+ def self.bypass_rescue
58
+ ActionController::Base.class_eval do
59
+ def rescue_action(exception)
60
+ raise exception
61
+ end
62
+ end
63
+ ActionController::Dispatcher.class_eval do
64
+ def self.failsafe_response(output, status, exception = nil)
65
+ raise exception
66
+ end
67
+ end
68
+ end
69
69
  end
70
70
  end
71
71
 
@@ -2,8 +2,8 @@ module Cucumber #:nodoc:
2
2
  class VERSION #:nodoc:
3
3
  MAJOR = 0
4
4
  MINOR = 2
5
- TINY = 0
6
- PATCH = 4 # Set to nil for official release
5
+ TINY = 1
6
+ PATCH = nil # Set to nil for official release
7
7
 
8
8
  STRING = [MAJOR, MINOR, TINY, PATCH].compact.join('.')
9
9
  end
@@ -4,6 +4,8 @@ require File.expand_path(File.dirname(__FILE__) + '/../../config/environment')
4
4
  require 'cucumber/rails/world'
5
5
  require 'cucumber/formatters/unicode' # Comment out this line if you don't want Cucumber Unicode support
6
6
  Cucumber::Rails.use_transactional_fixtures
7
+ Cucumber::Rails.bypass_rescue # Comment out this line if you want Rails own error handling
8
+ # (e.g. rescue_action_in_public / rescue_responses / rescue_from)
7
9
 
8
10
  require 'webrat'
9
11
 
@@ -113,11 +113,11 @@ END_OF_MESSAGE
113
113
  config = Configuration.new(StringIO.new, error = StringIO.new)
114
114
  config.parse!(%w{--profile i_do_not_exist})
115
115
 
116
- error.string.should match(/cucumber.yml was not found. Please refer to cucumber's documentaion on defining profiles in cucumber.yml./)
116
+ error.string.should match(/cucumber.yml was not found. Please refer to cucumber's documentation on defining profiles in cucumber.yml./)
117
117
  end
118
118
 
119
119
  it "should provide a helpful error message when cucumber.yml is blank or malformed" do
120
- expected_error_message = /cucumber.yml was found, but was blank or malformed. Please refer to cucumber's documentaion on correct profile usage./
120
+ expected_error_message = /cucumber.yml was found, but was blank or malformed. Please refer to cucumber's documentation on correct profile usage./
121
121
 
122
122
  ['', 'sfsadfs', "--- \n- an\n- array\n", "---dddfd"].each do |bad_input|
123
123
  given_cucumber_yml_defined_as(bad_input)
@@ -130,7 +130,7 @@ END_OF_MESSAGE
130
130
  end
131
131
 
132
132
  it "should procide a helpful error message when the YAML can not be parsed" do
133
- expected_error_message = /cucumber.yml was found, but could not be parsed. Please refer to cucumber's documentaion on correct profile usage./
133
+ expected_error_message = /cucumber.yml was found, but could not be parsed. Please refer to cucumber's documentation on correct profile usage./
134
134
 
135
135
  given_cucumber_yml_defined_as("input that causes an exception in YAML loading")
136
136
  YAML.should_receive(:load).and_raise Exception
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.2.0.4
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - "Aslak Helles\xC3\xB8y"
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-03-24 00:00:00 -07:00
12
+ date: 2009-03-25 00:00:00 -07:00
13
13
  default_executable: cucumber
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency