rspec-rails 2.1.0 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -7,10 +7,11 @@ gem 'rails', :path => File.expand_path("../vendor/rails", __FILE__)
7
7
  gem lib, :path => File.expand_path("../../#{lib}", __FILE__)
8
8
  end
9
9
 
10
- gem "cucumber", "0.8.5"
10
+ gem "cucumber", "0.9.4"
11
11
  gem "aruba", "0.2.2"
12
12
  gem 'webrat', "0.7.2"
13
13
  gem 'sqlite3-ruby', :require => 'sqlite3'
14
+ gem 'relish'
14
15
 
15
16
  gem 'autotest'
16
17
 
data/History.md CHANGED
@@ -1,5 +1,20 @@
1
1
  ## rspec-rails-2 release history (incomplete)
2
2
 
3
+ ### 2.2.0 / 2010-11-28
4
+
5
+ [full changelog](http://github.com/rspec/rspec-rails/compare/v2.1.0...v2.2.0)
6
+
7
+ * Enhancements
8
+ * Added stub_template in view specs
9
+
10
+ * Bug fixes
11
+ * Properly include helpers in views (Jonathan del Strother)
12
+ * Fix bug in which method missing led to a stack overflow
13
+ * Fix stack overflow in request specs with open_session
14
+ * Fix stack overflow in any spec when method_missing was invoked
15
+ * Add gem dependency on rails ~> 3.0.0 (ensures bundler won't install
16
+ rspec-rails-2 with rails-2 apps).
17
+
3
18
  ### 2.1.0 / 2010-11-07
4
19
 
5
20
  [full changelog](http://github.com/rspec/rspec-rails/compare/v2.0.1...v2.1.0)
@@ -26,47 +41,16 @@
26
41
 
27
42
  ### 2.0.0 / 2010-10-10
28
43
 
29
- [full changelog](http://github.com/rspec/rspec-rails/compare/v2.0.0.rc...v2.0.0)
30
-
31
- * Changes
32
- * route_to matcher delegates to assert_recognizes instead of assert_routing
33
- * update generators to use as_new_record instead of :new_record => true
34
-
35
- ### 2.0.0.rc / 2010-10-05
36
-
37
- [full changelog](http://github.com/rspec/rspec-rails/compare/v2.0.0.beta.22...v2.0.0.rc)
44
+ [full changelog](https://github.com/rspec/rspec-rails/compare/ea6bdef...v2.0.0)
38
45
 
39
46
  * Enhancements
40
- * add --webrat-matchers flag to scaffold generator (for view specs)
41
- * separate ActiveModel and ActiveRecord APIs in mock_model and stub_model
42
47
  * ControllerExampleGroup uses controller as the implicit subject by default (Paul Rosania)
43
-
44
- ### 2.0.0.beta.22 / 2010-09-12
45
-
46
- [full changelog](http://github.com/rspec/rspec-rails/compare/v2.0.0.beta.20...v2.0.0.beta.22)
47
-
48
- * Enhancements
49
48
  * autotest mapping improvements (Andreas Neuhaus)
50
-
51
- * Bug fixes
52
- * delegate flunk to assertion delegate
53
-
54
- ### 2.0.0.beta.20 / 2010-08-24
55
-
56
- [full changelog](http://github.com/rspec/rspec-rails/compare/v2.0.0.beta.19...v2.0.0.beta.20)
57
-
58
- * Enhancements
59
- * infer controller and action path_params in view specs
60
49
  * more cucumber features (Justin Ko)
61
50
  * clean up spec helper (Andre Arko)
62
- * render views in controller specs if controller class is not
63
- ActionController::Base
64
- * routing specs can access named routes
65
51
  * add assign(name, value) to helper specs (Justin Ko)
66
52
  * stub_model supports primary keys other than id (Justin Ko)
67
- * encapsulate Test::Unit and/or MiniTest assertions in a separate object
68
53
  * support choice between Webrat/Capybara (Justin Ko)
69
- * removed hard dependency on Webrat
70
54
  * support specs for 'abstract' subclasses of ActionController::Base (Mike Gehard)
71
55
  * be_a_new matcher supports args (Justin Ko)
72
56
 
@@ -0,0 +1,23 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2009 David Chelimsky
4
+ Copyright (c) 2005 The RSpec Development Team
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining
7
+ a copy of this software and associated documentation files (the
8
+ "Software"), to deal in the Software without restriction, including
9
+ without limitation the rights to use, copy, modify, merge, publish,
10
+ distribute, sublicense, and/or sell copies of the Software, and to
11
+ permit persons to whom the Software is furnished to do so, subject to
12
+ the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be
15
+ included in all copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
21
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
22
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
23
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -6,8 +6,16 @@ NOTE: rspec-2 does _not_ support rails-2. Use rspec-rails-1.3.x for rails-2.
6
6
 
7
7
  ## Documentation
8
8
 
9
- * [Cucumber features](http://relishapp.com/rspec/rspec-rails/v/2-0)
10
- * [RDoc](http://rubydoc.info/gems/rspec-rails/2.0.1/frames)
9
+ The [Cucumber features](http://relishapp.com/rspec/rspec-rails/v/2-1) are the
10
+ most comprehensive and up-to-date docs for end-users.
11
+
12
+ The [RDoc](http://rubydoc.info/gems/rspec-rails/2.1/frames) provides additional
13
+ information for contributors and/or extenders.
14
+
15
+ All of the documentation is open source and a work in progress. If you find it
16
+ lacking or confusing, you can help improve it by submitting requests and
17
+ patches to the [rspec-rails issue
18
+ tracker](https://github.com/rspec/rspec-rails/issues).
11
19
 
12
20
  ## Install
13
21
 
@@ -187,6 +195,11 @@ This means that most of the time you don't need to set these values. When
187
195
  spec'ing a partial that is included across different controllers, you _may_
188
196
  need to override these values before rendering the view.
189
197
 
198
+ To provide a layout for the render, you'll need to specify _both_ the template
199
+ and the layout explicitly. For example:
200
+
201
+ render :template => "events/show", :layout => "layouts/application"
202
+
190
203
  ## `assign(key, val)`
191
204
 
192
205
  Use this to assign values to instance variables in the view:
data/Rakefile CHANGED
@@ -108,7 +108,7 @@ end
108
108
  desc "Push cukes to relishapp using the relish-client-gem"
109
109
  task :relish, :version do |t, args|
110
110
  raise "rake relish[VERSION]" unless args[:version]
111
- sh "bundle exec relish --organization rspec --project rspec-rails -v #{args[:version]} push"
111
+ sh "relish push --organization rspec --project rspec-rails -v #{args[:version]}"
112
112
  end
113
113
 
114
114
  task :default => [:spec, "clobber:app", "generate:app", "generate:stuff", :smoke, :cucumber]
@@ -22,17 +22,27 @@ trade-off.
22
22
 
23
23
  ## View specs
24
24
 
25
+ ### view.should render_template
26
+
25
27
  Rails changed the way it renders partials, so to set an expectation that a
26
- partial gets rendered:
28
+ partial gets rendered, you need
27
29
 
28
30
  render
29
31
  view.should render_template(:partial => "widget/_row")
30
32
 
31
- ## as_new_record
33
+ ### stub_template
34
+
35
+ Introduced in rspec-rails-2.2, simulates the presence of view templates on the
36
+ file system. This supports isolation from partials rendered by the vew template
37
+ that is the subject of a view example:
38
+
39
+ stub_template "widgets/_widget.html.erb" => "This Content"
40
+
41
+ ### as_new_record
32
42
 
33
43
  Earlier versions of the view generators generated stub_model with `:new_record?
34
- => true`. As of rspec-rails-2.0.0.rc, that is no longer recognized, so you need
35
- to change this:
44
+ => true`. That is no longer recognized in rspec-rails-2, so you need to change
45
+ this:
36
46
 
37
47
  stub_model(Widget, :new_record? => true)
38
48
 
@@ -0,0 +1,51 @@
1
+ Feature: stub template
2
+
3
+ In order to isolate view specs from the partials rendered by the primary
4
+ view, rspec-rails (since 2.2) provides the stub_template method.
5
+
6
+ Scenario: stub template that does not exist
7
+ Given a file named "spec/views/gadgets/list.html.erb_spec.rb" with:
8
+ """
9
+ require "spec_helper"
10
+
11
+ describe "gadgets/list.html.erb" do
12
+ it "renders the gadget partial for each gadget" do
13
+ assign(:gadgets, [
14
+ mock_model(Gadget, :id => 1, :name => "First"),
15
+ mock_model(Gadget, :id => 2, :name => "Second")
16
+ ])
17
+ stub_template "gadgets/_gadget.html.erb" => "<%= gadget.name %><br/>"
18
+ render
19
+ rendered.should =~ /First/
20
+ rendered.should =~ /Second/
21
+ end
22
+ end
23
+ """
24
+
25
+ And a file named "app/views/gadgets/list.html.erb" with:
26
+ """
27
+ <%= render :partial => "gadget", :collection => @gadgets %>
28
+ """
29
+ When I run "rspec spec/views/gadgets/list.html.erb_spec.rb"
30
+ Then the output should contain "1 example, 0 failures"
31
+
32
+ Scenario: stub template that exists
33
+ Given a file named "spec/views/gadgets/edit.html.erb_spec.rb" with:
34
+ """
35
+ require "spec_helper"
36
+
37
+ describe "gadgets/edit.html.erb" do
38
+ before(:each) do
39
+ @gadget = assign(:gadget, stub_model(Gadget))
40
+ end
41
+
42
+ it "renders the form partial" do
43
+ stub_template "gadgets/_form.html.erb" => "This content"
44
+ render
45
+ rendered.should =~ /This content/
46
+ end
47
+ end
48
+ """
49
+ When I run "rspec spec/views/gadgets/edit.html.erb_spec.rb"
50
+ Then the output should contain "1 example, 0 failures"
51
+
@@ -3,12 +3,11 @@ require 'spec_helper'
3
3
  <% output_attributes = attributes.reject{|attribute| [:datetime, :timestamp, :time, :date].index(attribute.type) } -%>
4
4
  describe "<%= table_name %>/edit.html.<%= options[:template_engine] %>" do
5
5
  before(:each) do
6
- @<%= file_name %> = assign(:<%= file_name %>, stub_model(<%= class_name %>,
7
- :new_record? => false<%= output_attributes.empty? ? '' : ',' %>
6
+ @<%= file_name %> = assign(:<%= file_name %>, stub_model(<%= class_name %><%= output_attributes.empty? ? '))' : ',' %>
8
7
  <% output_attributes.each_with_index do |attribute, attribute_index| -%>
9
8
  :<%= attribute.name %> => <%= attribute.default.inspect %><%= attribute_index == output_attributes.length - 1 ? '' : ','%>
10
9
  <% end -%>
11
- ))
10
+ <%= output_attributes.empty? ? "" : " ))\n" -%>
12
11
  end
13
12
 
14
13
  it "renders the edit <%= file_name %> form" do
@@ -84,21 +84,14 @@ module RSpec::Rails
84
84
  include RSpec::Rails::BrowserSimulators
85
85
 
86
86
  webrat do
87
- include Webrat::Methods
88
87
  include Webrat::Matchers
88
+ include Webrat::Methods
89
89
  end
90
90
 
91
91
  capybara do
92
92
  include Capybara
93
93
  end
94
94
 
95
- # TODO (DC 7/31/2010) this is already included in RailsExampleGroup, but
96
- # due to some load order dependency problem between Webrat::Matchers and
97
- # RSpec::Matchers, combined with the fact that RailsExampleGroup extends
98
- # ActiveSupport::Concern, while the matcher modules do not, this needs to
99
- # be here as well. At least for now.
100
- include RSpec::Matchers
101
-
102
95
  module ClassMethods
103
96
  def controller_class
104
97
  describes
@@ -5,7 +5,6 @@ module RSpec
5
5
 
6
6
  include RSpec::Rails::SetupAndTeardownAdapter
7
7
  include RSpec::Rails::TestUnitAssertionAdapter
8
- include RSpec::Matchers
9
8
  end
10
9
  end
11
10
  end
@@ -24,6 +24,10 @@ module RSpec::Rails
24
24
  webrat do
25
25
  include Webrat::Matchers
26
26
  include Webrat::Methods
27
+
28
+ def app
29
+ ::Rails.application
30
+ end
27
31
  end
28
32
 
29
33
  capybara do
@@ -34,28 +38,12 @@ module RSpec::Rails
34
38
  include RSpec::Rails::Matchers::RenderTemplate
35
39
  include ActionController::TemplateAssertions
36
40
 
37
- module InstanceMethods
38
- def app
39
- ::Rails.application
40
- end
41
-
42
- def last_response
43
- response
44
- end
45
- end
46
-
47
41
  included do
48
42
  metadata[:type] = :request
49
43
 
50
44
  before do
51
45
  @router = ::Rails.application.routes
52
46
  end
53
-
54
- webrat do
55
- Webrat.configure do |config|
56
- config.mode = :rack
57
- end
58
- end
59
47
  end
60
48
 
61
49
  RSpec.configure &include_self_when_dir_matches('spec','requests')
@@ -13,6 +13,8 @@ module RSpec::Rails
13
13
  module InstanceMethods
14
14
  attr_reader :routes
15
15
 
16
+ private
17
+
16
18
  def method_missing(m, *args, &block)
17
19
  routes.url_helpers.respond_to?(m) ? routes.url_helpers.send(m, *args) : super
18
20
  end
@@ -33,7 +33,7 @@ module RSpec::Rails
33
33
 
34
34
  module ClassMethods
35
35
  def _default_helper
36
- base = metadata[:behaviour][:description].split('/').first
36
+ base = metadata[:example_group][:description].split('/').first
37
37
  (base.camelize + 'Helper').constantize if base
38
38
  rescue NameError
39
39
  nil
@@ -85,6 +85,18 @@ module RSpec::Rails
85
85
  _view
86
86
  end
87
87
 
88
+ # Simulates the presence of a template on the file system by adding a
89
+ # Rails' FixtureResolver to the front of the view_paths list. Designed to
90
+ # help isolate view examples from partials rendered by the view template
91
+ # that is the subject of the example.
92
+ #
93
+ # == Example
94
+ #
95
+ # stub_template("widgets/_widget.html.erb" => "This content.")
96
+ def stub_template(hash)
97
+ view.view_paths.unshift(ActionView::FixtureResolver.new(hash))
98
+ end
99
+
88
100
  # Provides access to the params hash that will be available within the
89
101
  # view:
90
102
  #
@@ -28,11 +28,19 @@ module RSpec
28
28
  end
29
29
  end
30
30
 
31
- # Creates a mock object instance for a +string_or_model_class+ with
32
- # common methods stubbed out. Additional methods may be easily stubbed
33
- # (via add_stubs) if +stubs+ is passed.
31
+ # Creates a test double representing +string_or_model_class+ with common
32
+ # ActiveModel methods stubbed out. Additional methods may be easily
33
+ # stubbed (via add_stubs) if +stubs+ is passed. This is most useful for
34
+ # impersonating models that don't exist yet.
34
35
  #
35
- # +model_class+ can be any of:
36
+ # NOTE that only ActiveModel's methods, plus <tt>new_record?</tt>, are
37
+ # stubbed out implicitly. <tt>new_record?</tt> returns the inverse of
38
+ # <tt>persisted?</tt>, and is present only for compatibility with
39
+ # extension frameworks that have yet to update themselves to the
40
+ # ActiveModel API (which declares <tt>persisted?</tt>, not
41
+ # <tt>new_record?</tt>).
42
+ #
43
+ # +string_or_model_class+ can be any of:
36
44
  #
37
45
  # * A String representing a Class that does not exist
38
46
  # * A String representing a Class that extends ActiveModel::Naming
@@ -145,25 +153,17 @@ EOM
145
153
  # assigned as a stub return value using RSpec's mocking/stubbing
146
154
  # framework.
147
155
  #
148
- # <tt>new_record?</tt> is overridden to return the result of id.nil?
149
- # This means that by default new_record? will return false. If you want
156
+ # <tt>persisted?</tt> is overridden to return the result of !id.nil?
157
+ # This means that by default persisted? will return true. If you want
150
158
  # the object to behave as a new record, sending it +as_new_record+ will
151
159
  # set the id to nil. You can also explicitly set :id => nil, in which
152
- # case new_record? will return true, but using +as_new_record+ makes the
160
+ # case persisted? will return false, but using +as_new_record+ makes the
153
161
  # example a bit more descriptive.
154
162
  #
155
163
  # While you can use stub_model in any example (model, view, controller,
156
164
  # helper), it is especially useful in view examples, which are
157
165
  # inherently more state-based than interaction-based.
158
166
  #
159
- # == Database Independence
160
- #
161
- # +stub_model+ does not make your examples entirely
162
- # database-independent. It does not stop the model class itself from
163
- # loading up its columns from the database. It just prevents data access
164
- # from the object itself. To completely decouple from the database, take
165
- # a look at libraries like unit_record or NullDB.
166
- #
167
167
  # == Examples
168
168
  #
169
169
  # stub_model(Person)
@@ -1,7 +1,7 @@
1
1
  module RSpec # :nodoc:
2
2
  module Rails # :nodoc:
3
3
  module Version # :nodoc:
4
- STRING = '2.1.0'
4
+ STRING = '2.2.0'
5
5
  end
6
6
  end
7
7
  end
@@ -6,8 +6,8 @@ Gem::Specification.new do |s|
6
6
  s.name = "rspec-rails"
7
7
  s.version = RSpec::Rails::Version::STRING
8
8
  s.platform = Gem::Platform::RUBY
9
- s.authors = ["David Chelimsky", "Chad Humphries"]
10
- s.email = "dchelimsky@gmail.com;chad.humphries@gmail.com"
9
+ s.authors = ["David Chelimsky"]
10
+ s.email = "dchelimsky@gmail.com"
11
11
  s.homepage = "http://github.com/rspec/rspec-rails"
12
12
  s.summary = "rspec-rails-#{RSpec::Rails::Version::STRING}"
13
13
  s.description = "RSpec-2 for Rails-3"
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
18
18
  s.files = `git ls-files`.split("\n")
19
19
  s.test_files = `git ls-files -- {spec,features}/*`.split("\n")
20
20
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
21
- s.extra_rdoc_files = [ "README.markdown" ]
21
+ s.extra_rdoc_files = [ "README.md" ]
22
22
  s.rdoc_options = ["--charset=UTF-8"]
23
23
  s.require_path = "lib"
24
24
 
@@ -57,6 +57,7 @@ Gem::Specification.new do |s|
57
57
  **************************************************
58
58
  }
59
59
 
60
- s.add_runtime_dependency "rspec", "~> 2.1.0"
60
+ s.add_runtime_dependency "rails", "~> 3.0.0"
61
+ s.add_runtime_dependency "rspec", "~> #{RSpec::Rails::Version::STRING.split('.')[0..1].join('.')}"
61
62
  end
62
63
 
@@ -15,7 +15,7 @@ module RSpec::Rails
15
15
  describe 'automatic inclusion of helpers' do
16
16
  module ::ThingsHelper; end
17
17
 
18
- pending 'includes the helper with the same name' do
18
+ it 'includes the helper with the same name' do
19
19
  group = RSpec::Core::ExampleGroup.describe 'things/show.html.erb'
20
20
  group.should_receive(:helper).with(ThingsHelper)
21
21
  group.class_eval do
metadata CHANGED
@@ -4,49 +4,63 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 2
7
- - 1
7
+ - 2
8
8
  - 0
9
- version: 2.1.0
9
+ version: 2.2.0
10
10
  platform: ruby
11
11
  authors:
12
12
  - David Chelimsky
13
- - Chad Humphries
14
13
  autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2010-11-07 01:00:00 -05:00
17
+ date: 2010-11-28 00:00:00 -06:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
- name: rspec
21
+ name: rails
23
22
  requirement: &id001 !ruby/object:Gem::Requirement
24
23
  none: false
25
24
  requirements:
26
25
  - - ~>
27
26
  - !ruby/object:Gem::Version
28
27
  segments:
29
- - 2
30
- - 1
28
+ - 3
29
+ - 0
31
30
  - 0
32
- version: 2.1.0
31
+ version: 3.0.0
33
32
  type: :runtime
34
33
  prerelease: false
35
34
  version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: rspec
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
39
+ requirements:
40
+ - - ~>
41
+ - !ruby/object:Gem::Version
42
+ segments:
43
+ - 2
44
+ - 2
45
+ version: "2.2"
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: *id002
36
49
  description: RSpec-2 for Rails-3
37
- email: dchelimsky@gmail.com;chad.humphries@gmail.com
50
+ email: dchelimsky@gmail.com
38
51
  executables: []
39
52
 
40
53
  extensions: []
41
54
 
42
55
  extra_rdoc_files:
43
- - README.markdown
56
+ - README.md
44
57
  files:
45
58
  - .document
46
59
  - .gitignore
47
60
  - Gemfile
48
61
  - History.md
49
- - README.markdown
62
+ - License.txt
63
+ - README.md
50
64
  - Rakefile
51
65
  - Thorfile
52
66
  - Upgrade.markdown
@@ -71,6 +85,7 @@ files:
71
85
  - features/step_definitions/model_steps.rb
72
86
  - features/support/env.rb
73
87
  - features/view_specs/inferred_controller_path.feature
88
+ - features/view_specs/stub_template.feature
74
89
  - features/view_specs/view_spec.feature
75
90
  - lib/autotest/rails_rspec2.rb
76
91
  - lib/generators/rspec.rb
@@ -168,7 +183,7 @@ licenses: []
168
183
  post_install_message: |
169
184
  **************************************************
170
185
 
171
- Thank you for installing rspec-rails-2.1.0!
186
+ Thank you for installing rspec-rails-2.2.0!
172
187
 
173
188
  This version of rspec-rails only works with versions of rails >= 3.0.0
174
189
 
@@ -178,7 +193,7 @@ post_install_message: |
178
193
  can access its generators and rake tasks.
179
194
 
180
195
  group :development, :test do
181
- gem "rspec-rails", ">= 2.1.0"
196
+ gem "rspec-rails", ">= 2.2.0"
182
197
  end
183
198
 
184
199
  Be sure to run the following command in each of your Rails apps if you're
@@ -209,7 +224,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
209
224
  requirements:
210
225
  - - ">="
211
226
  - !ruby/object:Gem::Version
212
- hash: 101005116309468581
227
+ hash: -949927593083894273
213
228
  segments:
214
229
  - 0
215
230
  version: "0"
@@ -218,7 +233,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
218
233
  requirements:
219
234
  - - ">="
220
235
  - !ruby/object:Gem::Version
221
- hash: 101005116309468581
236
+ hash: -949927593083894273
222
237
  segments:
223
238
  - 0
224
239
  version: "0"
@@ -228,7 +243,7 @@ rubyforge_project: rspec
228
243
  rubygems_version: 1.3.7
229
244
  signing_key:
230
245
  specification_version: 3
231
- summary: rspec-rails-2.1.0
246
+ summary: rspec-rails-2.2.0
232
247
  test_files:
233
248
  - features/README.markdown
234
249
  - features/controller_specs/anonymous_controller.feature
@@ -249,6 +264,7 @@ test_files:
249
264
  - features/step_definitions/model_steps.rb
250
265
  - features/support/env.rb
251
266
  - features/view_specs/inferred_controller_path.feature
267
+ - features/view_specs/stub_template.feature
252
268
  - features/view_specs/view_spec.feature
253
269
  - spec/autotest/rails_rspec2_spec.rb
254
270
  - spec/rspec/rails/assertion_adapter_spec.rb