focused_controller 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. data/.gitignore +5 -0
  2. data/.travis.yml +15 -0
  3. data/Appraisals +11 -0
  4. data/Gemfile +4 -0
  5. data/README.md +1 -0
  6. data/Rakefile +21 -0
  7. data/focused_controller.gemspec +30 -0
  8. data/gemfiles/rails-3-0.gemfile +7 -0
  9. data/gemfiles/rails-3-1.gemfile +7 -0
  10. data/gemfiles/rails-3-2.gemfile +7 -0
  11. data/lib/focused_controller.rb +4 -0
  12. data/lib/focused_controller/action_name.rb +6 -0
  13. data/lib/focused_controller/functional_test_helper.rb +25 -0
  14. data/lib/focused_controller/mixin.rb +44 -0
  15. data/lib/focused_controller/route.rb +15 -0
  16. data/lib/focused_controller/route_mapper.rb +58 -0
  17. data/lib/focused_controller/rspec_controller_class.rb +15 -0
  18. data/lib/focused_controller/rspec_functional_helper.rb +25 -0
  19. data/lib/focused_controller/rspec_helper.rb +42 -0
  20. data/lib/focused_controller/test_helper.rb +183 -0
  21. data/lib/focused_controller/version.rb +3 -0
  22. data/test/acceptance/app_test.rb +156 -0
  23. data/test/app/.gitignore +15 -0
  24. data/test/app/Gemfile +6 -0
  25. data/test/app/README.rdoc +261 -0
  26. data/test/app/Rakefile +7 -0
  27. data/test/app/app/controllers/application_controller.rb +6 -0
  28. data/test/app/app/controllers/posts_controller.rb +60 -0
  29. data/test/app/app/models/.gitkeep +0 -0
  30. data/test/app/app/models/post.rb +88 -0
  31. data/test/app/app/views/layouts/application.html.erb +13 -0
  32. data/test/app/app/views/posts/_form.html.erb +31 -0
  33. data/test/app/app/views/posts/edit.html.erb +6 -0
  34. data/test/app/app/views/posts/index.html.erb +23 -0
  35. data/test/app/app/views/posts/new.html.erb +5 -0
  36. data/test/app/app/views/posts/show.html.erb +8 -0
  37. data/test/app/config.ru +4 -0
  38. data/test/app/config/application.rb +16 -0
  39. data/test/app/config/boot.rb +6 -0
  40. data/test/app/config/environment.rb +5 -0
  41. data/test/app/config/environments/development.rb +21 -0
  42. data/test/app/config/environments/test.rb +29 -0
  43. data/test/app/config/initializers/backtrace_silencers.rb +7 -0
  44. data/test/app/config/initializers/inflections.rb +15 -0
  45. data/test/app/config/initializers/mime_types.rb +5 -0
  46. data/test/app/config/initializers/secret_token.rb +7 -0
  47. data/test/app/config/initializers/session_store.rb +8 -0
  48. data/test/app/config/locales/en.yml +5 -0
  49. data/test/app/config/routes.rb +62 -0
  50. data/test/app/db/seeds.rb +7 -0
  51. data/test/app/doc/README_FOR_APP +2 -0
  52. data/test/app/lib/assets/.gitkeep +0 -0
  53. data/test/app/lib/tasks/.gitkeep +0 -0
  54. data/test/app/log/.gitkeep +0 -0
  55. data/test/app/public/404.html +26 -0
  56. data/test/app/public/422.html +26 -0
  57. data/test/app/public/500.html +25 -0
  58. data/test/app/public/favicon.ico +0 -0
  59. data/test/app/public/index.html +241 -0
  60. data/test/app/public/javascripts/application.js +9663 -0
  61. data/test/app/public/robots.txt +5 -0
  62. data/test/app/public/stylesheets/application.css +83 -0
  63. data/test/app/script/rails +6 -0
  64. data/test/app/spec/controllers/posts_controller_spec.rb +59 -0
  65. data/test/app/spec/isolated_spec_helper.rb +9 -0
  66. data/test/app/spec/spec_helper.rb +5 -0
  67. data/test/app/spec/unit/controllers/posts_controller_isolated_spec.rb +60 -0
  68. data/test/app/spec/unit/controllers/posts_controller_spec.rb +59 -0
  69. data/test/app/test/functional/.gitkeep +0 -0
  70. data/test/app/test/functional/posts_controller_test.rb +67 -0
  71. data/test/app/test/isolated_test_helper.rb +10 -0
  72. data/test/app/test/test_helper.rb +6 -0
  73. data/test/app/test/unit/.gitkeep +0 -0
  74. data/test/app/test/unit/controllers/posts_controller_isolated_test.rb +69 -0
  75. data/test/app/test/unit/controllers/posts_controller_test.rb +67 -0
  76. data/test/app/vendor/assets/javascripts/.gitkeep +0 -0
  77. data/test/app/vendor/assets/stylesheets/.gitkeep +0 -0
  78. data/test/app/vendor/plugins/.gitkeep +0 -0
  79. data/test/helper.rb +33 -0
  80. data/test/unit/functional_test_helper_test.rb +65 -0
  81. data/test/unit/mixin_test.rb +70 -0
  82. data/test/unit/route_mapper_test.rb +73 -0
  83. data/test/unit/route_test.rb +39 -0
  84. data/test/unit/rspec_functional_helper.rb +42 -0
  85. data/test/unit/rspec_helper_test.rb +91 -0
  86. data/test/unit/test_helper_test.rb +235 -0
  87. metadata +285 -0
@@ -0,0 +1,235 @@
1
+ require 'helper'
2
+ require 'focused_controller/test_helper'
3
+ require 'action_controller'
4
+
5
+ module FocusedController
6
+ module TestHelper
7
+ module FakePostsController
8
+ class Action < ActionController::Base
9
+ end
10
+
11
+ class Index < Action
12
+ def run
13
+ if params[:omg]
14
+ "omg"
15
+ elsif params[:set_session]
16
+ session[:foo] = 'omg'
17
+ elsif params[:set_flash]
18
+ flash[:foo] = 'omg'
19
+ elsif params[:set_cookie]
20
+ cookies[:foo] = 'omg'
21
+ end
22
+ end
23
+
24
+ def self._routes
25
+ OpenStruct.new(
26
+ :named_routes => OpenStruct.new(
27
+ :module => Module.new do
28
+ def foo_path
29
+ '/foo'
30
+ end
31
+ end
32
+ )
33
+ )
34
+ end
35
+ end
36
+
37
+ class Show < Action
38
+ def self._routes
39
+ OpenStruct.new(
40
+ :named_routes => OpenStruct.new(
41
+ :module => Module.new do
42
+ def bar_path
43
+ '/bar'
44
+ end
45
+ end
46
+ )
47
+ )
48
+ end
49
+ end
50
+
51
+ class TestCase < ActiveSupport::TestCase
52
+ include FocusedController::TestHelper
53
+
54
+ def initialize(method_name = :foo)
55
+ super
56
+ @_result = OpenStruct.new
57
+ end
58
+ def foo; end
59
+ end
60
+
61
+ class IndexTest < TestCase
62
+ end
63
+
64
+ class ShowTest < TestCase
65
+ end
66
+
67
+ class OtherShowTest < TestCase
68
+ self.controller_class = Show
69
+ end
70
+
71
+ class OtherOtherShowTest < OtherShowTest
72
+ end
73
+ end
74
+
75
+ describe TestHelper do
76
+ it 'instantiates the correct controller' do
77
+ mappings = {
78
+ FakePostsController::IndexTest => FakePostsController::Index,
79
+ FakePostsController::ShowTest => FakePostsController::Show,
80
+ FakePostsController::OtherShowTest => FakePostsController::Show,
81
+ FakePostsController::OtherOtherShowTest => FakePostsController::Show
82
+ }
83
+
84
+ mappings.each do |test, action|
85
+ test.new.controller.is_a?(action).must_equal true
86
+ end
87
+ end
88
+
89
+ subject { FakePostsController::IndexTest.new }
90
+
91
+ def must_fail(&block)
92
+ block.must_raise ActiveSupport::TestCase::Assertion
93
+ end
94
+
95
+ def must_succeed(&block)
96
+ block.call
97
+ # this is just so the assertion is counted. the block will
98
+ # raise if it fails
99
+ assert_equal true, true
100
+ end
101
+
102
+ it 'supports assert_template :foo' do
103
+ subject.controller.render :foo
104
+ must_succeed { subject.assert_template :foo }
105
+ must_fail { subject.assert_template :bar }
106
+ end
107
+
108
+ it "supports assert_template 'foo'" do
109
+ subject.controller.render :foo
110
+ must_succeed { subject.assert_template 'foo' }
111
+ must_fail { subject.assert_template 'bar' }
112
+ end
113
+
114
+ it 'supports assert_response :success' do
115
+ must_succeed { subject.assert_response :success }
116
+ must_fail { subject.assert_response :error }
117
+
118
+ subject.controller.render 'foo'
119
+
120
+ must_succeed { subject.assert_response :success }
121
+ must_fail { subject.assert_response :error }
122
+ end
123
+
124
+ it 'supports assert_response :redirect' do
125
+ must_fail { subject.assert_response :redirect }
126
+
127
+ subject.controller.redirect_to 'foo'
128
+ must_succeed { subject.assert_response :redirect }
129
+ end
130
+
131
+ it 'supports assert_redirected_to' do
132
+ must_fail { subject.assert_redirected_to '/foo' }
133
+
134
+ subject.controller.redirect_to '/foo'
135
+
136
+ must_succeed { subject.assert_redirected_to '/foo' }
137
+ must_fail { subject.assert_redirected_to '/bar' }
138
+ end
139
+
140
+ it "responds to the controller's url helpers" do
141
+ subject.respond_to?(:foo_path).must_equal true
142
+ subject.respond_to?(:bar_path).must_equal false
143
+ subject.foo_path.must_equal '/foo'
144
+
145
+ other = FakePostsController::ShowTest.new
146
+ other.respond_to?(:foo_path).must_equal false
147
+ other.respond_to?(:bar_path).must_equal true
148
+ other.bar_path.must_equal '/bar'
149
+ end
150
+
151
+ it 'supports session' do
152
+ subject.req(:set_session => true)
153
+ subject.session[:foo].must_equal 'omg'
154
+ subject.session['foo'].must_equal 'omg'
155
+ end
156
+
157
+ it 'supports flash' do
158
+ subject.req(:set_flash => true)
159
+ subject.flash[:foo].must_equal 'omg'
160
+
161
+ # This is consistent with the behaviour of standard rails functional tests
162
+ subject.flash['foo'].must_equal nil
163
+ end
164
+
165
+ it 'supports cookies' do
166
+ subject.req(:set_cookie => true)
167
+ subject.cookies[:foo].must_equal 'omg'
168
+ end
169
+
170
+ describe "#req" do
171
+ it "sets params and calls the controller's #run" do
172
+ subject.req(:omg => true).must_equal 'omg'
173
+ end
174
+
175
+ it 'sets session' do
176
+ subject.req(nil, { :foo => 'bar' })
177
+ subject.session[:foo].must_equal 'bar'
178
+ end
179
+
180
+ it 'set flash' do
181
+ subject.req(nil, nil, { :foo => 'bar' })
182
+ subject.flash[:foo].must_equal 'bar'
183
+ end
184
+
185
+ it "doesn't overwrite existing params, session, or flash if new ones aren't provided" do
186
+ subject.controller.params[:param] = true
187
+ subject.controller.flash[:flash] = true
188
+ subject.controller.session[:session] = true
189
+
190
+ subject.req
191
+
192
+ subject.controller.params[:param].must_equal true
193
+ subject.controller.flash[:flash].must_equal true
194
+ subject.controller.session[:session].must_equal true
195
+
196
+ subject.req({})
197
+
198
+ subject.controller.params[:param].must_equal(nil)
199
+ end
200
+ end
201
+
202
+ describe 'url stubbing' do
203
+ before do
204
+ subject.stub_url :foo, :bar
205
+ end
206
+
207
+ it 'handles equality' do
208
+ foo, bar = Object.new, Object.new
209
+ StubbedURL.new(:foo_path, [foo]).must_equal StubbedURL.new(:foo_path, [foo])
210
+ StubbedURL.new(:foo_path, [foo, bar]).wont_equal StubbedURL.new(:foo_path, [foo])
211
+ StubbedURL.new(:foo_path, [bar]).wont_equal StubbedURL.new(:foo_path, [foo])
212
+ StubbedURL.new(:bar_path, [foo]).wont_equal StubbedURL.new(:foo_path, [foo])
213
+ end
214
+
215
+ it 'has a to_s' do
216
+ StubbedURL.new(:foo_path, ['omg', 'lol']).to_s.must_equal "foo_path(omg, lol)"
217
+ end
218
+
219
+ it 'creates a stub method on the test and controller instances' do
220
+ foo = Object.new
221
+ subject.foo_path(foo).must_equal StubbedURL.new(:foo_path, [foo])
222
+ subject.controller.foo_path(foo).must_equal StubbedURL.new(:foo_path, [foo])
223
+ subject.foo_url(foo).must_equal StubbedURL.new(:foo_url, [foo])
224
+ subject.controller.foo_url(foo).must_equal StubbedURL.new(:foo_url, [foo])
225
+ end
226
+
227
+ it 'works with a controller' do
228
+ foo = Object.new
229
+ subject.controller.redirect_to StubbedURL.new(:foo_path, [foo])
230
+ must_succeed { subject.assert_redirected_to StubbedURL.new(:foo_path, [foo]) }
231
+ end
232
+ end
233
+ end
234
+ end
235
+ end
metadata ADDED
@@ -0,0 +1,285 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: focused_controller
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Jon Leighton
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-02-22 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: actionpack
16
+ requirement: &9754840 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '3.0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *9754840
25
+ - !ruby/object:Gem::Dependency
26
+ name: minitest
27
+ requirement: &9754340 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: 2.11.2
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *9754340
36
+ - !ruby/object:Gem::Dependency
37
+ name: capybara
38
+ requirement: &9753880 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 1.1.2
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *9753880
47
+ - !ruby/object:Gem::Dependency
48
+ name: capybara_minitest_spec
49
+ requirement: &9753420 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 0.2.1
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *9753420
58
+ - !ruby/object:Gem::Dependency
59
+ name: poltergeist
60
+ requirement: &9752960 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: 0.4.0
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *9752960
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec
71
+ requirement: &9752500 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: 2.8.0
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *9752500
80
+ - !ruby/object:Gem::Dependency
81
+ name: rspec-rails
82
+ requirement: &9752040 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ~>
86
+ - !ruby/object:Gem::Version
87
+ version: 2.8.0
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *9752040
91
+ - !ruby/object:Gem::Dependency
92
+ name: appraisal
93
+ requirement: &9751580 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ~>
97
+ - !ruby/object:Gem::Version
98
+ version: 0.4.1
99
+ type: :development
100
+ prerelease: false
101
+ version_requirements: *9751580
102
+ description: Write Rails controllers that don't violate SRP
103
+ email:
104
+ - j@jonathanleighton.com
105
+ executables: []
106
+ extensions: []
107
+ extra_rdoc_files: []
108
+ files:
109
+ - .gitignore
110
+ - .travis.yml
111
+ - Appraisals
112
+ - Gemfile
113
+ - README.md
114
+ - Rakefile
115
+ - focused_controller.gemspec
116
+ - gemfiles/rails-3-0.gemfile
117
+ - gemfiles/rails-3-1.gemfile
118
+ - gemfiles/rails-3-2.gemfile
119
+ - lib/focused_controller.rb
120
+ - lib/focused_controller/action_name.rb
121
+ - lib/focused_controller/functional_test_helper.rb
122
+ - lib/focused_controller/mixin.rb
123
+ - lib/focused_controller/route.rb
124
+ - lib/focused_controller/route_mapper.rb
125
+ - lib/focused_controller/rspec_controller_class.rb
126
+ - lib/focused_controller/rspec_functional_helper.rb
127
+ - lib/focused_controller/rspec_helper.rb
128
+ - lib/focused_controller/test_helper.rb
129
+ - lib/focused_controller/version.rb
130
+ - test/acceptance/app_test.rb
131
+ - test/app/.gitignore
132
+ - test/app/Gemfile
133
+ - test/app/README.rdoc
134
+ - test/app/Rakefile
135
+ - test/app/app/controllers/application_controller.rb
136
+ - test/app/app/controllers/posts_controller.rb
137
+ - test/app/app/models/.gitkeep
138
+ - test/app/app/models/post.rb
139
+ - test/app/app/views/layouts/application.html.erb
140
+ - test/app/app/views/posts/_form.html.erb
141
+ - test/app/app/views/posts/edit.html.erb
142
+ - test/app/app/views/posts/index.html.erb
143
+ - test/app/app/views/posts/new.html.erb
144
+ - test/app/app/views/posts/show.html.erb
145
+ - test/app/config.ru
146
+ - test/app/config/application.rb
147
+ - test/app/config/boot.rb
148
+ - test/app/config/environment.rb
149
+ - test/app/config/environments/development.rb
150
+ - test/app/config/environments/test.rb
151
+ - test/app/config/initializers/backtrace_silencers.rb
152
+ - test/app/config/initializers/inflections.rb
153
+ - test/app/config/initializers/mime_types.rb
154
+ - test/app/config/initializers/secret_token.rb
155
+ - test/app/config/initializers/session_store.rb
156
+ - test/app/config/locales/en.yml
157
+ - test/app/config/routes.rb
158
+ - test/app/db/seeds.rb
159
+ - test/app/doc/README_FOR_APP
160
+ - test/app/lib/assets/.gitkeep
161
+ - test/app/lib/tasks/.gitkeep
162
+ - test/app/log/.gitkeep
163
+ - test/app/public/404.html
164
+ - test/app/public/422.html
165
+ - test/app/public/500.html
166
+ - test/app/public/favicon.ico
167
+ - test/app/public/index.html
168
+ - test/app/public/javascripts/application.js
169
+ - test/app/public/robots.txt
170
+ - test/app/public/stylesheets/application.css
171
+ - test/app/script/rails
172
+ - test/app/spec/controllers/posts_controller_spec.rb
173
+ - test/app/spec/isolated_spec_helper.rb
174
+ - test/app/spec/spec_helper.rb
175
+ - test/app/spec/unit/controllers/posts_controller_isolated_spec.rb
176
+ - test/app/spec/unit/controllers/posts_controller_spec.rb
177
+ - test/app/test/functional/.gitkeep
178
+ - test/app/test/functional/posts_controller_test.rb
179
+ - test/app/test/isolated_test_helper.rb
180
+ - test/app/test/test_helper.rb
181
+ - test/app/test/unit/.gitkeep
182
+ - test/app/test/unit/controllers/posts_controller_isolated_test.rb
183
+ - test/app/test/unit/controllers/posts_controller_test.rb
184
+ - test/app/vendor/assets/javascripts/.gitkeep
185
+ - test/app/vendor/assets/stylesheets/.gitkeep
186
+ - test/app/vendor/plugins/.gitkeep
187
+ - test/helper.rb
188
+ - test/unit/functional_test_helper_test.rb
189
+ - test/unit/mixin_test.rb
190
+ - test/unit/route_mapper_test.rb
191
+ - test/unit/route_test.rb
192
+ - test/unit/rspec_functional_helper.rb
193
+ - test/unit/rspec_helper_test.rb
194
+ - test/unit/test_helper_test.rb
195
+ homepage: http://github.com/jonleighton/focused_controller
196
+ licenses: []
197
+ post_install_message:
198
+ rdoc_options: []
199
+ require_paths:
200
+ - lib
201
+ required_ruby_version: !ruby/object:Gem::Requirement
202
+ none: false
203
+ requirements:
204
+ - - ! '>='
205
+ - !ruby/object:Gem::Version
206
+ version: '0'
207
+ required_rubygems_version: !ruby/object:Gem::Requirement
208
+ none: false
209
+ requirements:
210
+ - - ! '>='
211
+ - !ruby/object:Gem::Version
212
+ version: '0'
213
+ requirements: []
214
+ rubyforge_project: focused_controller
215
+ rubygems_version: 1.8.15
216
+ signing_key:
217
+ specification_version: 3
218
+ summary: Write Rails controllers that don't violate SRP
219
+ test_files:
220
+ - test/acceptance/app_test.rb
221
+ - test/app/.gitignore
222
+ - test/app/Gemfile
223
+ - test/app/README.rdoc
224
+ - test/app/Rakefile
225
+ - test/app/app/controllers/application_controller.rb
226
+ - test/app/app/controllers/posts_controller.rb
227
+ - test/app/app/models/.gitkeep
228
+ - test/app/app/models/post.rb
229
+ - test/app/app/views/layouts/application.html.erb
230
+ - test/app/app/views/posts/_form.html.erb
231
+ - test/app/app/views/posts/edit.html.erb
232
+ - test/app/app/views/posts/index.html.erb
233
+ - test/app/app/views/posts/new.html.erb
234
+ - test/app/app/views/posts/show.html.erb
235
+ - test/app/config.ru
236
+ - test/app/config/application.rb
237
+ - test/app/config/boot.rb
238
+ - test/app/config/environment.rb
239
+ - test/app/config/environments/development.rb
240
+ - test/app/config/environments/test.rb
241
+ - test/app/config/initializers/backtrace_silencers.rb
242
+ - test/app/config/initializers/inflections.rb
243
+ - test/app/config/initializers/mime_types.rb
244
+ - test/app/config/initializers/secret_token.rb
245
+ - test/app/config/initializers/session_store.rb
246
+ - test/app/config/locales/en.yml
247
+ - test/app/config/routes.rb
248
+ - test/app/db/seeds.rb
249
+ - test/app/doc/README_FOR_APP
250
+ - test/app/lib/assets/.gitkeep
251
+ - test/app/lib/tasks/.gitkeep
252
+ - test/app/log/.gitkeep
253
+ - test/app/public/404.html
254
+ - test/app/public/422.html
255
+ - test/app/public/500.html
256
+ - test/app/public/favicon.ico
257
+ - test/app/public/index.html
258
+ - test/app/public/javascripts/application.js
259
+ - test/app/public/robots.txt
260
+ - test/app/public/stylesheets/application.css
261
+ - test/app/script/rails
262
+ - test/app/spec/controllers/posts_controller_spec.rb
263
+ - test/app/spec/isolated_spec_helper.rb
264
+ - test/app/spec/spec_helper.rb
265
+ - test/app/spec/unit/controllers/posts_controller_isolated_spec.rb
266
+ - test/app/spec/unit/controllers/posts_controller_spec.rb
267
+ - test/app/test/functional/.gitkeep
268
+ - test/app/test/functional/posts_controller_test.rb
269
+ - test/app/test/isolated_test_helper.rb
270
+ - test/app/test/test_helper.rb
271
+ - test/app/test/unit/.gitkeep
272
+ - test/app/test/unit/controllers/posts_controller_isolated_test.rb
273
+ - test/app/test/unit/controllers/posts_controller_test.rb
274
+ - test/app/vendor/assets/javascripts/.gitkeep
275
+ - test/app/vendor/assets/stylesheets/.gitkeep
276
+ - test/app/vendor/plugins/.gitkeep
277
+ - test/helper.rb
278
+ - test/unit/functional_test_helper_test.rb
279
+ - test/unit/mixin_test.rb
280
+ - test/unit/route_mapper_test.rb
281
+ - test/unit/route_test.rb
282
+ - test/unit/rspec_functional_helper.rb
283
+ - test/unit/rspec_helper_test.rb
284
+ - test/unit/test_helper_test.rb
285
+ has_rdoc: