rspec-rails 3.5.2 → 3.6.0.beta1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7e1127f5db4a0e05afa4c4fa39980e1404e4df26
4
- data.tar.gz: 1238a4e7c4f35d4faa085f4a25289fec7a01c4ca
3
+ metadata.gz: 2ebf54e513b2bfad6ffe14c36afa43056012db04
4
+ data.tar.gz: 9418672e115bde33c829fa68f68d2c44af25be19
5
5
  SHA512:
6
- metadata.gz: 3eae1414a10448323e7152181f782ae51994c1050ddc85c74b3a43d5354d576acfd36062f8c6279afc55bfb038dd1000fa2a8aa535912ae69e3c87ba53141d76
7
- data.tar.gz: eea37f6f178da5f22c322bc74cb907d84088be22bd54d3beb9a091907e89d144de653d7afef0eaecb0d2b6fb87a69f7c140b338802251792bfc3eecadc1d8686
6
+ metadata.gz: 8716e97798de2b89ae70a4602bc635957af4bb4e0350ee9e8a1396c23eb978093ed6076c4786793cee571c5874a3fd84659edf98f69f521fd2461c18dc45b89e
7
+ data.tar.gz: 24f17af3d57c74e592fece81e6af00b0588dee7f9a5d5e279e95bde85d4ddbe341512ea997fe110166bb027da087b1e0de46c088628d4cdc2a3cfffa68c0a0d0
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -1,4 +1,14 @@
1
- ### Development
1
+ ### 3.6.0.beta1 / 2016-10-09
2
+ [Full Changelog](http://github.com/rspec/rspec-rails/compare/v3.5.2...v3.6.0.beta1)
3
+
4
+ Enhancements:
5
+
6
+ * Add support for `rake notes` in Rails `>= 5.1`. (John Meehan, #1661)
7
+ * Remove `assigns` and `assert_template` from scaffold spec generators (Josh
8
+ Justice, #1689)
9
+ * Add support for generating scaffolds for api app specs. (Krzysztof Zych, #1685)
10
+
11
+ ### 3.5.2 / 2016-08-26
2
12
  [Full Changelog](http://github.com/rspec/rspec-rails/compare/v3.5.1...v3.5.2)
3
13
 
4
14
  Bug Fixes:
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # rspec-rails [![Build Status](https://secure.travis-ci.org/rspec/rspec-rails.svg?branch=master)](http://travis-ci.org/rspec/rspec-rails) [![Code Climate](https://img.shields.io/codeclimate/github/rspec/rspec-rails.svg)](https://codeclimate.com/github/rspec/rspec-rails)
2
- **rspec-rails** is a testing framework for Rails 3.x and 4.x.
2
+ **rspec-rails** is a testing framework for Rails 3.x, 4.x and 5.0.
3
3
 
4
4
  Use **[rspec-rails 1.x](http://github.com/dchelimsky/rspec-rails)** for Rails
5
5
  2.x.
@@ -11,7 +11,7 @@ Add `rspec-rails` to **both** the `:development` and `:test` groups in the
11
11
 
12
12
  ```ruby
13
13
  group :development, :test do
14
- gem 'rspec-rails', '~> 3.4'
14
+ gem 'rspec-rails', '~> 3.5'
15
15
  end
16
16
  ```
17
17
 
@@ -86,6 +86,7 @@ There are three particular `rspec-rails` specific changes to be aware of:
86
86
  3. [Rails 4.x `ActiveRecord::Migration` pending migration checks](https://www.relishapp.com/rspec/rspec-rails/docs/upgrade#pending-migration-checks)
87
87
  4. Extraction of `stub_model` and `mock_model` to
88
88
  [`rspec-activemodel-mocks`](https://github.com/rspec/rspec-activemodel-mocks)
89
+ 5. In Rails 5.x, controller testing has been moved to its own gem which is [rails-controller-testing](https://github.com/rails/rails-controller-testing). Using `assigns` in your controller specs without adding this gem will no longer work.
89
90
 
90
91
  Please see the [RSpec Rails Upgrade
91
92
  docs](https://www.relishapp.com/rspec/rspec-rails/docs/upgrade) for full
@@ -12,6 +12,7 @@ module Rspec
12
12
  class_option :orm, :desc => "ORM used to generate the controller"
13
13
  class_option :template_engine, :desc => "Template engine to generate view files"
14
14
  class_option :singleton, :type => :boolean, :desc => "Supply to create a singleton controller"
15
+ class_option :api, :type => :boolean, :desc => "Skip specs unnecessary for API-only apps"
15
16
 
16
17
  class_option :controller_specs, :type => :boolean, :default => true, :desc => "Generate controller specs"
17
18
  class_option :view_specs, :type => :boolean, :default => true, :desc => "Generate view specs"
@@ -26,10 +27,15 @@ module Rspec
26
27
  controller_class_path,
27
28
  "#{controller_file_name}_controller_spec.rb"
28
29
  )
29
- template 'controller_spec.rb', template_file
30
+ if options[:api]
31
+ template 'api_controller_spec.rb', template_file
32
+ else
33
+ template 'controller_spec.rb', template_file
34
+ end
30
35
  end
31
36
 
32
37
  def generate_view_specs
38
+ return if options[:api]
33
39
  return unless options[:view_specs] && options[:template_engine]
34
40
 
35
41
  copy_view :edit
@@ -58,14 +64,6 @@ module Rspec
58
64
  File.join("spec/views", controller_file_path, "#{view}.html.#{options[:template_engine]}_spec.rb")
59
65
  end
60
66
 
61
- def formatted_hash(hash)
62
- formatted = hash.inspect
63
- formatted.gsub!("{", "{ ")
64
- formatted.gsub!("}", " }")
65
- formatted.gsub!("=>", " => ")
66
- formatted
67
- end
68
-
69
67
  # support for namespaced-resources
70
68
  def ns_file_name
71
69
  ns_parts.empty? ? file_name : "#{ns_parts[0].underscore}_#{ns_parts[1].singularize.underscore}"
@@ -83,65 +81,6 @@ module Rspec
83
81
  end
84
82
  end
85
83
 
86
- # Returns the name of the mock. For example, if the file name is user,
87
- # it returns mock_user.
88
- #
89
- # If a hash is given, it uses the hash key as the ORM method and the
90
- # value as response. So, for ActiveRecord and file name "User":
91
- #
92
- # mock_file_name(:save => true)
93
- # #=> mock_user(:save => true)
94
- #
95
- # If another ORM is being used and another method instead of save is
96
- # called, it will be the one used.
97
- #
98
- def mock_file_name(hash = nil)
99
- if hash
100
- method, and_return = hash.to_a.first
101
- method = orm_instance.send(method).split('.').last.gsub(/\(.*?\)/, '')
102
- "mock_#{ns_file_name}(:#{method} => #{and_return})"
103
- else
104
- "mock_#{ns_file_name}"
105
- end
106
- end
107
-
108
- # Receives the ORM chain and convert to expects. For ActiveRecord:
109
- #
110
- # should! orm_class.find(User, "37")
111
- # #=> User.should_receive(:find).with(37)
112
- #
113
- # For Datamapper:
114
- #
115
- # should! orm_class.find(User, "37")
116
- # #=> User.should_receive(:get).with(37)
117
- #
118
- def should_receive(chain)
119
- stub_or_should_chain(:should_receive, chain)
120
- end
121
-
122
- # Receives the ORM chain and convert to stub. For ActiveRecord:
123
- #
124
- # stub orm_class.find(User, "37")
125
- # #=> User.stub(:find).with(37)
126
- #
127
- # For Datamapper:
128
- #
129
- # stub orm_class.find(User, "37")
130
- # #=> User.stub(:get).with(37)
131
- #
132
- def stub(chain)
133
- stub_or_should_chain(:stub, chain)
134
- end
135
-
136
- def stub_or_should_chain(mode, chain)
137
- receiver, method = chain.split(".")
138
- method.gsub!(/\((.*?)\)/, '')
139
-
140
- response = "#{receiver}.#{mode}(:#{method})"
141
- response << ".with(#{$1})" unless $1.blank?
142
- response
143
- end
144
-
145
84
  def value_for(attribute)
146
85
  raw_value_for(attribute).inspect
147
86
  end
@@ -0,0 +1,165 @@
1
+ require 'rails_helper'
2
+
3
+ # This spec was generated by rspec-rails when you ran the scaffold generator.
4
+ # It demonstrates how one might use RSpec to specify the controller code that
5
+ # was generated by Rails when you ran the scaffold generator.
6
+ #
7
+ # It assumes that the implementation code is generated by the rails scaffold
8
+ # generator. If you are using any extension libraries to generate different
9
+ # controller code, this generated spec may or may not pass.
10
+ #
11
+ # It only uses APIs available in rails and/or rspec-rails. There are a number
12
+ # of tools you can use to make these specs even more expressive, but we're
13
+ # sticking to rails and rspec-rails APIs to keep things simple and stable.
14
+ #
15
+ # Compared to earlier versions of this generator, there is very limited use of
16
+ # stubs and message expectations in this spec. Stubs are only used when there
17
+ # is no simpler way to get a handle on the object needed for the example.
18
+ # Message expectations are only used when there is no simpler way to specify
19
+ # that an instance is receiving a specific message.
20
+ #
21
+ # Also compared to earlier versions of this generator, there are no longer any
22
+ # expectations of assigns and templates rendered. These features have been
23
+ # removed from Rails core in Rails 5, but can be added back in via the
24
+ # `rails-controller-testing` gem.
25
+
26
+ <% module_namespacing do -%>
27
+ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:controller) %> do
28
+
29
+ # This should return the minimal set of attributes required to create a valid
30
+ # <%= class_name %>. As you add validations to <%= class_name %>, be sure to
31
+ # adjust the attributes here as well.
32
+ let(:valid_attributes) {
33
+ skip("Add a hash of attributes valid for your model")
34
+ }
35
+
36
+ let(:invalid_attributes) {
37
+ skip("Add a hash of attributes invalid for your model")
38
+ }
39
+
40
+ # This should return the minimal set of values that should be in the session
41
+ # in order to pass any filters (e.g. authentication) defined in
42
+ # <%= controller_class_name %>Controller. Be sure to keep this updated too.
43
+ let(:valid_session) { {} }
44
+
45
+ <% unless options[:singleton] -%>
46
+ describe "GET #index" do
47
+ it "returns a success response" do
48
+ <%= file_name %> = <%= class_name %>.create! valid_attributes
49
+ <% if RUBY_VERSION < '1.9.3' -%>
50
+ get :index, {}, valid_session
51
+ <% else -%>
52
+ get :index, params: {}, session: valid_session
53
+ <% end -%>
54
+ expect(response).to be_success
55
+ end
56
+ end
57
+
58
+ <% end -%>
59
+ describe "GET #show" do
60
+ it "returns a success response" do
61
+ <%= file_name %> = <%= class_name %>.create! valid_attributes
62
+ <% if RUBY_VERSION < '1.9.3' -%>
63
+ get :show, {:id => <%= file_name %>.to_param}, valid_session
64
+ <% else -%>
65
+ get :show, params: {id: <%= file_name %>.to_param}, session: valid_session
66
+ <% end -%>
67
+ expect(response).to be_success
68
+ end
69
+ end
70
+
71
+ describe "POST #create" do
72
+ context "with valid params" do
73
+ it "creates a new <%= class_name %>" do
74
+ expect {
75
+ <% if RUBY_VERSION < '1.9.3' -%>
76
+ post :create, {:<%= ns_file_name %> => valid_attributes}, valid_session
77
+ <% else -%>
78
+ post :create, params: {<%= ns_file_name %>: valid_attributes}, session: valid_session
79
+ <% end -%>
80
+ }.to change(<%= class_name %>, :count).by(1)
81
+ end
82
+
83
+ it "renders a JSON response with the new <%= ns_file_name %>" do
84
+ <% if RUBY_VERSION < '1.9.3' -%>
85
+ post :create, {:<%= ns_file_name %> => valid_attributes}, valid_session
86
+ <% else %>
87
+ post :create, params: {<%= ns_file_name %>: valid_attributes}, session: valid_session
88
+ <% end -%>
89
+ expect(response).to have_http_status(:created)
90
+ expect(response.content_type).to eq('application/json')
91
+ expect(response.location).to eq(<%= ns_file_name %>_url(<%= class_name %>.last))
92
+ end
93
+ end
94
+
95
+ context "with invalid params" do
96
+ it "renders a JSON response with errors for the new <%= ns_file_name %>" do
97
+ <% if RUBY_VERSION < '1.9.3' -%>
98
+ post :create, {:<%= ns_file_name %> => invalid_attributes}, valid_session
99
+ <% else %>
100
+ post :create, params: {<%= ns_file_name %>: invalid_attributes}, session: valid_session
101
+ <% end -%>
102
+ expect(response).to have_http_status(:unprocessable_entity)
103
+ expect(response.content_type).to eq('application/json')
104
+ end
105
+ end
106
+ end
107
+
108
+ describe "PUT #update" do
109
+ context "with valid params" do
110
+ let(:new_attributes) {
111
+ skip("Add a hash of attributes valid for your model")
112
+ }
113
+
114
+ it "updates the requested <%= ns_file_name %>" do
115
+ <%= file_name %> = <%= class_name %>.create! valid_attributes
116
+ <% if RUBY_VERSION < '1.9.3' -%>
117
+ put :update, {:id => <%= file_name %>.to_param, :<%= ns_file_name %> => new_attributes}, valid_session
118
+ <% else -%>
119
+ put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name %>: new_attributes}, session: valid_session
120
+ <% end -%>
121
+ <%= file_name %>.reload
122
+ skip("Add assertions for updated state")
123
+ end
124
+
125
+ it "renders a JSON response with the <%= ns_file_name %>" do
126
+ <%= file_name %> = <%= class_name %>.create! valid_attributes
127
+ <% if RUBY_VERSION < '1.9.3' -%>
128
+ put :update, {:id => <%= file_name %>.to_param, :<%= ns_file_name %> => valid_attributes}, valid_session
129
+ <% else %>
130
+ put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name %>: valid_attributes}, session: valid_session
131
+ <% end -%>
132
+ expect(response).to have_http_status(:ok)
133
+ expect(response.content_type).to eq('application/json')
134
+ end
135
+ end
136
+
137
+ context "with invalid params" do
138
+ it "renders a JSON response with errors for the <%= ns_file_name %>" do
139
+ <%= file_name %> = <%= class_name %>.create! valid_attributes
140
+ <% if RUBY_VERSION < '1.9.3' -%>
141
+ put :update, {:id => <%= file_name %>.to_param, :<%= ns_file_name %> => invalid_attributes}, valid_session
142
+ <% else %>
143
+ put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name %>: invalid_attributes}, session: valid_session
144
+ <% end -%>
145
+ expect(response).to have_http_status(:unprocessable_entity)
146
+ expect(response.content_type).to eq('application/json')
147
+ end
148
+ end
149
+ end
150
+
151
+ describe "DELETE #destroy" do
152
+ it "destroys the requested <%= ns_file_name %>" do
153
+ <%= file_name %> = <%= class_name %>.create! valid_attributes
154
+ expect {
155
+ <% if RUBY_VERSION < '1.9.3' -%>
156
+ delete :destroy, {:id => <%= file_name %>.to_param}, valid_session
157
+ <% else -%>
158
+ delete :destroy, params: {id: <%= file_name %>.to_param}, session: valid_session
159
+ <% end -%>
160
+ }.to change(<%= class_name %>, :count).by(-1)
161
+ end
162
+ end
163
+
164
+ end
165
+ <% end -%>
@@ -17,6 +17,11 @@ require 'rails_helper'
17
17
  # is no simpler way to get a handle on the object needed for the example.
18
18
  # Message expectations are only used when there is no simpler way to specify
19
19
  # that an instance is receiving a specific message.
20
+ #
21
+ # Also compared to earlier versions of this generator, there are no longer any
22
+ # expectations of assigns and templates rendered. These features have been
23
+ # removed from Rails core in Rails 5, but can be added back in via the
24
+ # `rails-controller-testing` gem.
20
25
 
21
26
  <% module_namespacing do -%>
22
27
  RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:controller) %> do
@@ -39,50 +44,50 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:control
39
44
 
40
45
  <% unless options[:singleton] -%>
41
46
  describe "GET #index" do
42
- it "assigns all <%= table_name.pluralize %> as @<%= table_name.pluralize %>" do
47
+ it "returns a success response" do
43
48
  <%= file_name %> = <%= class_name %>.create! valid_attributes
44
49
  <% if RUBY_VERSION < '1.9.3' -%>
45
50
  get :index, {}, valid_session
46
51
  <% else -%>
47
52
  get :index, params: {}, session: valid_session
48
53
  <% end -%>
49
- expect(assigns(:<%= table_name %>)).to eq([<%= file_name %>])
54
+ expect(response).to be_success
50
55
  end
51
56
  end
52
57
 
53
58
  <% end -%>
54
59
  describe "GET #show" do
55
- it "assigns the requested <%= ns_file_name %> as @<%= ns_file_name %>" do
60
+ it "returns a success response" do
56
61
  <%= file_name %> = <%= class_name %>.create! valid_attributes
57
62
  <% if RUBY_VERSION < '1.9.3' -%>
58
63
  get :show, {:id => <%= file_name %>.to_param}, valid_session
59
64
  <% else -%>
60
65
  get :show, params: {id: <%= file_name %>.to_param}, session: valid_session
61
66
  <% end -%>
62
- expect(assigns(:<%= ns_file_name %>)).to eq(<%= file_name %>)
67
+ expect(response).to be_success
63
68
  end
64
69
  end
65
70
 
66
71
  describe "GET #new" do
67
- it "assigns a new <%= ns_file_name %> as @<%= ns_file_name %>" do
72
+ it "returns a success response" do
68
73
  <% if RUBY_VERSION < '1.9.3' -%>
69
74
  get :new, {}, valid_session
70
75
  <% else -%>
71
76
  get :new, params: {}, session: valid_session
72
77
  <% end -%>
73
- expect(assigns(:<%= ns_file_name %>)).to be_a_new(<%= class_name %>)
78
+ expect(response).to be_success
74
79
  end
75
80
  end
76
81
 
77
82
  describe "GET #edit" do
78
- it "assigns the requested <%= ns_file_name %> as @<%= ns_file_name %>" do
83
+ it "returns a success response" do
79
84
  <%= file_name %> = <%= class_name %>.create! valid_attributes
80
85
  <% if RUBY_VERSION < '1.9.3' -%>
81
86
  get :edit, {:id => <%= file_name %>.to_param}, valid_session
82
87
  <% else -%>
83
88
  get :edit, params: {id: <%= file_name %>.to_param}, session: valid_session
84
89
  <% end -%>
85
- expect(assigns(:<%= ns_file_name %>)).to eq(<%= file_name %>)
90
+ expect(response).to be_success
86
91
  end
87
92
  end
88
93
 
@@ -98,16 +103,6 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:control
98
103
  }.to change(<%= class_name %>, :count).by(1)
99
104
  end
100
105
 
101
- it "assigns a newly created <%= ns_file_name %> as @<%= ns_file_name %>" do
102
- <% if RUBY_VERSION < '1.9.3' -%>
103
- post :create, {:<%= ns_file_name %> => valid_attributes}, valid_session
104
- <% else -%>
105
- post :create, params: {<%= ns_file_name %>: valid_attributes}, session: valid_session
106
- <% end -%>
107
- expect(assigns(:<%= ns_file_name %>)).to be_a(<%= class_name %>)
108
- expect(assigns(:<%= ns_file_name %>)).to be_persisted
109
- end
110
-
111
106
  it "redirects to the created <%= ns_file_name %>" do
112
107
  <% if RUBY_VERSION < '1.9.3' -%>
113
108
  post :create, {:<%= ns_file_name %> => valid_attributes}, valid_session
@@ -119,22 +114,13 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:control
119
114
  end
120
115
 
121
116
  context "with invalid params" do
122
- it "assigns a newly created but unsaved <%= ns_file_name %> as @<%= ns_file_name %>" do
117
+ it "returns a success response (i.e. to display the 'new' template)" do
123
118
  <% if RUBY_VERSION < '1.9.3' -%>
124
119
  post :create, {:<%= ns_file_name %> => invalid_attributes}, valid_session
125
120
  <% else -%>
126
121
  post :create, params: {<%= ns_file_name %>: invalid_attributes}, session: valid_session
127
122
  <% end -%>
128
- expect(assigns(:<%= ns_file_name %>)).to be_a_new(<%= class_name %>)
129
- end
130
-
131
- it "re-renders the 'new' template" do
132
- <% if RUBY_VERSION < '1.9.3' -%>
133
- post :create, {:<%= ns_file_name %> => invalid_attributes}, valid_session
134
- <% else -%>
135
- post :create, params: {<%= ns_file_name %>: invalid_attributes}, session: valid_session
136
- <% end -%>
137
- expect(response).to render_template("new")
123
+ expect(response).to be_success
138
124
  end
139
125
  end
140
126
  end
@@ -156,16 +142,6 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:control
156
142
  skip("Add assertions for updated state")
157
143
  end
158
144
 
159
- it "assigns the requested <%= ns_file_name %> as @<%= ns_file_name %>" do
160
- <%= file_name %> = <%= class_name %>.create! valid_attributes
161
- <% if RUBY_VERSION < '1.9.3' -%>
162
- put :update, {:id => <%= file_name %>.to_param, :<%= ns_file_name %> => valid_attributes}, valid_session
163
- <% else -%>
164
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name %>: valid_attributes}, session: valid_session
165
- <% end -%>
166
- expect(assigns(:<%= ns_file_name %>)).to eq(<%= file_name %>)
167
- end
168
-
169
145
  it "redirects to the <%= ns_file_name %>" do
170
146
  <%= file_name %> = <%= class_name %>.create! valid_attributes
171
147
  <% if RUBY_VERSION < '1.9.3' -%>
@@ -178,24 +154,14 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:control
178
154
  end
179
155
 
180
156
  context "with invalid params" do
181
- it "assigns the <%= ns_file_name %> as @<%= ns_file_name %>" do
182
- <%= file_name %> = <%= class_name %>.create! valid_attributes
183
- <% if RUBY_VERSION < '1.9.3' -%>
184
- put :update, {:id => <%= file_name %>.to_param, :<%= ns_file_name %> => invalid_attributes}, valid_session
185
- <% else -%>
186
- put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name %>: invalid_attributes}, session: valid_session
187
- <% end -%>
188
- expect(assigns(:<%= ns_file_name %>)).to eq(<%= file_name %>)
189
- end
190
-
191
- it "re-renders the 'edit' template" do
157
+ it "returns a success response (i.e. to display the 'edit' template)" do
192
158
  <%= file_name %> = <%= class_name %>.create! valid_attributes
193
159
  <% if RUBY_VERSION < '1.9.3' -%>
194
160
  put :update, {:id => <%= file_name %>.to_param, :<%= ns_file_name %> => invalid_attributes}, valid_session
195
161
  <% else -%>
196
162
  put :update, params: {id: <%= file_name %>.to_param, <%= ns_file_name %>: invalid_attributes}, session: valid_session
197
163
  <% end -%>
198
- expect(response).to render_template("edit")
164
+ expect(response).to be_success
199
165
  end
200
166
  end
201
167
  end
@@ -10,17 +10,21 @@ RSpec.describe <%= controller_class_name %>Controller, <%= type_metatag(:routing
10
10
  end
11
11
 
12
12
  <% end -%>
13
+ <% unless options[:api] -%>
13
14
  it "routes to #new" do
14
15
  expect(:get => "/<%= ns_table_name %>/new").to route_to("<%= ns_table_name %>#new")
15
16
  end
17
+ <% end -%>
16
18
 
17
19
  it "routes to #show" do
18
20
  expect(:get => "/<%= ns_table_name %>/1").to route_to("<%= ns_table_name %>#show", :id => "1")
19
21
  end
20
22
 
23
+ <% unless options[:api] -%>
21
24
  it "routes to #edit" do
22
25
  expect(:get => "/<%= ns_table_name %>/1/edit").to route_to("<%= ns_table_name %>#edit", :id => "1")
23
26
  end
27
+ <% end -%>
24
28
 
25
29
  it "routes to #create" do
26
30
  expect(:post => "/<%= ns_table_name %>").to route_to("<%= ns_table_name %>#create")
@@ -6,6 +6,10 @@ module RSpec
6
6
  module Rails
7
7
  # Railtie to hook into Rails.
8
8
  class Railtie < ::Rails::Railtie
9
+ # As of Rails 5.1.0 you can register directories to work with `rake notes`
10
+ if ::Rails::VERSION::STRING >= '5.1'
11
+ SourceAnnotationExtractor::Annotation.register_directories("spec")
12
+ end
9
13
  # Rails-3.0.1 requires config.app_generators instead of 3.0.0's config.generators
10
14
  generators = config.respond_to?(:app_generators) ? config.app_generators : config.generators
11
15
  generators.integration_tool :rspec
@@ -3,7 +3,7 @@ module RSpec
3
3
  # Version information for RSpec Rails.
4
4
  module Version
5
5
  # Current version of RSpec Rails, in semantic versioning format.
6
- STRING = '3.5.2'
6
+ STRING = '3.6.0.beta1'
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.2
4
+ version: 3.6.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Chelimsky
@@ -44,7 +44,7 @@ cert_chain:
44
44
  ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
45
45
  F3MdtaDehhjC
46
46
  -----END CERTIFICATE-----
47
- date: 2016-08-25 00:00:00.000000000 Z
47
+ date: 2016-10-10 00:00:00.000000000 Z
48
48
  dependencies:
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: activesupport
@@ -92,58 +92,58 @@ dependencies:
92
92
  name: rspec-core
93
93
  requirement: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - "~>"
95
+ - - '='
96
96
  - !ruby/object:Gem::Version
97
- version: 3.5.0
97
+ version: 3.6.0.beta1
98
98
  type: :runtime
99
99
  prerelease: false
100
100
  version_requirements: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - "~>"
102
+ - - '='
103
103
  - !ruby/object:Gem::Version
104
- version: 3.5.0
104
+ version: 3.6.0.beta1
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: rspec-expectations
107
107
  requirement: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - "~>"
109
+ - - '='
110
110
  - !ruby/object:Gem::Version
111
- version: 3.5.0
111
+ version: 3.6.0.beta1
112
112
  type: :runtime
113
113
  prerelease: false
114
114
  version_requirements: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - "~>"
116
+ - - '='
117
117
  - !ruby/object:Gem::Version
118
- version: 3.5.0
118
+ version: 3.6.0.beta1
119
119
  - !ruby/object:Gem::Dependency
120
120
  name: rspec-mocks
121
121
  requirement: !ruby/object:Gem::Requirement
122
122
  requirements:
123
- - - "~>"
123
+ - - '='
124
124
  - !ruby/object:Gem::Version
125
- version: 3.5.0
125
+ version: 3.6.0.beta1
126
126
  type: :runtime
127
127
  prerelease: false
128
128
  version_requirements: !ruby/object:Gem::Requirement
129
129
  requirements:
130
- - - "~>"
130
+ - - '='
131
131
  - !ruby/object:Gem::Version
132
- version: 3.5.0
132
+ version: 3.6.0.beta1
133
133
  - !ruby/object:Gem::Dependency
134
134
  name: rspec-support
135
135
  requirement: !ruby/object:Gem::Requirement
136
136
  requirements:
137
- - - "~>"
137
+ - - '='
138
138
  - !ruby/object:Gem::Version
139
- version: 3.5.0
139
+ version: 3.6.0.beta1
140
140
  type: :runtime
141
141
  prerelease: false
142
142
  version_requirements: !ruby/object:Gem::Requirement
143
143
  requirements:
144
- - - "~>"
144
+ - - '='
145
145
  - !ruby/object:Gem::Version
146
- version: 3.5.0
146
+ version: 3.6.0.beta1
147
147
  - !ruby/object:Gem::Dependency
148
148
  name: cucumber
149
149
  requirement: !ruby/object:Gem::Requirement
@@ -224,6 +224,7 @@ files:
224
224
  - lib/generators/rspec/observer/templates/observer_spec.rb
225
225
  - lib/generators/rspec/request/request_generator.rb
226
226
  - lib/generators/rspec/scaffold/scaffold_generator.rb
227
+ - lib/generators/rspec/scaffold/templates/api_controller_spec.rb
227
228
  - lib/generators/rspec/scaffold/templates/controller_spec.rb
228
229
  - lib/generators/rspec/scaffold/templates/edit_spec.rb
229
230
  - lib/generators/rspec/scaffold/templates/index_spec.rb
@@ -286,12 +287,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
286
287
  version: '0'
287
288
  required_rubygems_version: !ruby/object:Gem::Requirement
288
289
  requirements:
289
- - - ">="
290
+ - - ">"
290
291
  - !ruby/object:Gem::Version
291
- version: '0'
292
+ version: 1.3.1
292
293
  requirements: []
293
294
  rubyforge_project:
294
- rubygems_version: 2.6.3
295
+ rubygems_version: 2.2.2
295
296
  signing_key:
296
297
  specification_version: 4
297
298
  summary: RSpec for Rails
metadata.gz.sig CHANGED
Binary file