focused_controller 1.0.0 → 1.1.0
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 +7 -0
- data/.travis.yml +4 -6
- data/Appraisals +4 -5
- data/CHANGELOG.md +3 -0
- data/README.md +5 -0
- data/focused_controller.gemspec +5 -5
- data/gemfiles/{rails-3-1.gemfile → rails_3_1.gemfile} +0 -0
- data/gemfiles/{rails-3-2.gemfile → rails_3_2.gemfile} +0 -0
- data/gemfiles/rails_4_0.gemfile +7 -0
- data/lib/focused_controller/functional_test_helper.rb +16 -5
- data/lib/focused_controller/mixin.rb +5 -1
- data/lib/focused_controller/rspec_helper.rb +3 -2
- data/lib/focused_controller/test_helper.rb +9 -1
- data/lib/focused_controller/version.rb +1 -1
- data/test/app/Gemfile +1 -1
- data/test/app/app/models/post.rb +2 -0
- data/test/app/app/views/posts/index.html.erb +1 -1
- data/test/app/config/environments/development.rb +2 -3
- data/test/app/config/environments/test.rb +2 -3
- data/test/app/config/initializers/secret_token.rb +1 -0
- data/test/app/test/functional/posts_controller_test.rb +1 -0
- data/test/app/test/unit/controllers/posts_controller_test.rb +1 -0
- data/test/helper.rb +10 -1
- data/test/unit/functional_test_helper_test.rb +53 -16
- data/test/unit/mixin_test.rb +2 -2
- data/test/unit/route_mapper_test.rb +3 -3
- metadata +27 -38
- data/gemfiles/rails-3-0.gemfile +0 -8
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: bba50f15d9a2bb936bd4b78ed12ae12c8dde7970
|
4
|
+
data.tar.gz: 07c4280195ca55e71849e1ede1f32ba274d51af8
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: fc77f35481b3d741e8988495362e67d28862ff379f300b131927a39b80636be07dea2fec7b7f97fe41eb1af41269b6d80faa1aeab78d19dc21f1a3bcdfc86268
|
7
|
+
data.tar.gz: a58a337acdeb40611d7632abc5a4a22df6670feaad647d5e5973a990e1d68f529b7248bf6fc5da17cb92673c92b1e5dfaca49065d386c25c8bae6b3988b9ed56
|
data/.travis.yml
CHANGED
@@ -1,11 +1,9 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
|
+
- 2.0.0
|
3
4
|
- 1.9.3
|
4
|
-
- 1.9.2
|
5
|
-
- 1.8.7
|
6
|
-
- jruby-18mode
|
7
5
|
- jruby-19mode
|
8
6
|
gemfile:
|
9
|
-
- gemfiles/
|
10
|
-
- gemfiles/
|
11
|
-
- gemfiles/
|
7
|
+
- gemfiles/rails_4_0.gemfile
|
8
|
+
- gemfiles/rails_3_2.gemfile
|
9
|
+
- gemfiles/rails_3_1.gemfile
|
data/Appraisals
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
appraise 'rails-4-0' do
|
2
|
+
gem 'rails', '~> 4.0.0'
|
3
|
+
end
|
4
|
+
|
1
5
|
appraise 'rails-3-2' do
|
2
6
|
gem 'rails', '~> 3.2.0'
|
3
7
|
end
|
@@ -5,8 +9,3 @@ end
|
|
5
9
|
appraise 'rails-3-1' do
|
6
10
|
gem 'rails', '~> 3.1.0'
|
7
11
|
end
|
8
|
-
|
9
|
-
appraise 'rails-3-0' do
|
10
|
-
gem 'rails', '~> 3.0.0'
|
11
|
-
gem 'rack-test', '~> 0.5.7'
|
12
|
-
end
|
data/CHANGELOG.md
ADDED
data/README.md
CHANGED
@@ -10,6 +10,9 @@ Focused Controller also provides test helpers which enable you to write unit
|
|
10
10
|
tests for your controller code. This is much faster than functional testing,
|
11
11
|
and better suited to testing fine grained logic that may exist in your actions.
|
12
12
|
|
13
|
+
[I wrote a blog post to fully explain the
|
14
|
+
idea](http://jonathanleighton.com/articles/2012/explaining-focused-controller/).
|
15
|
+
|
13
16
|
There is a [mailing list](http://groups.google.com/group/focused_controller)
|
14
17
|
for discussion.
|
15
18
|
|
@@ -108,6 +111,7 @@ to be called as it would always be `#call`. So this is omitted:
|
|
108
111
|
|
109
112
|
``` ruby
|
110
113
|
require 'focused_controller/functional_test_helper'
|
114
|
+
require_dependency 'users_controller'
|
111
115
|
|
112
116
|
module UsersController
|
113
117
|
class CreateTest < ActionController::TestCase
|
@@ -181,6 +185,7 @@ It also provides accessors for these objects in your test class.
|
|
181
185
|
|
182
186
|
``` ruby
|
183
187
|
require 'focused_controller/test_helper'
|
188
|
+
require_dependency 'users_controller'
|
184
189
|
|
185
190
|
module UsersController
|
186
191
|
class CreateTest < ActiveSupport::TestCase
|
data/focused_controller.gemspec
CHANGED
@@ -18,12 +18,12 @@ Gem::Specification.new do |s|
|
|
18
18
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
19
19
|
s.require_paths = ["lib"]
|
20
20
|
|
21
|
-
s.add_dependency 'actionpack', '
|
21
|
+
s.add_dependency 'actionpack', '>= 3.0', '< 4.1'
|
22
22
|
|
23
|
-
s.add_development_dependency 'minitest', '~> 2
|
24
|
-
s.add_development_dependency 'capybara', '~>
|
25
|
-
s.add_development_dependency 'capybara_minitest_spec', '~> 0
|
26
|
-
s.add_development_dependency 'poltergeist', '~>
|
23
|
+
s.add_development_dependency 'minitest', '~> 4.2'
|
24
|
+
s.add_development_dependency 'capybara', '~> 2.1'
|
25
|
+
s.add_development_dependency 'capybara_minitest_spec', '~> 1.0'
|
26
|
+
s.add_development_dependency 'poltergeist', '~> 1.3'
|
27
27
|
s.add_development_dependency 'rspec', '~> 2.8'
|
28
28
|
s.add_development_dependency 'rspec-rails', '~> 2.8'
|
29
29
|
s.add_development_dependency 'appraisal', '~> 0.4'
|
File without changes
|
File without changes
|
@@ -3,23 +3,34 @@ require 'active_support/concern'
|
|
3
3
|
module FocusedController
|
4
4
|
module FunctionalTestHelper
|
5
5
|
def get(*args)
|
6
|
-
|
6
|
+
new_args = args_with_action_name(*args)
|
7
|
+
super(*new_args)
|
7
8
|
end
|
8
9
|
|
9
10
|
def post(*args)
|
10
|
-
super(
|
11
|
+
super(*args_with_action_name(*args))
|
11
12
|
end
|
12
13
|
|
13
14
|
def put(*args)
|
14
|
-
super(
|
15
|
+
super(*args_with_action_name(*args))
|
15
16
|
end
|
16
17
|
|
17
18
|
def delete(*args)
|
18
|
-
super(
|
19
|
+
super(*args_with_action_name(*args))
|
19
20
|
end
|
20
21
|
|
21
22
|
def head(*args)
|
22
|
-
super(
|
23
|
+
super(*args_with_action_name(*args))
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def args_with_action_name(*args)
|
29
|
+
if args.first.is_a?(Symbol)
|
30
|
+
args
|
31
|
+
else
|
32
|
+
[FocusedController.action_name] + args
|
33
|
+
end
|
23
34
|
end
|
24
35
|
end
|
25
36
|
end
|
@@ -13,7 +13,7 @@ module FocusedController
|
|
13
13
|
end
|
14
14
|
|
15
15
|
module ClassMethods
|
16
|
-
def
|
16
|
+
def focused_controller_path
|
17
17
|
@focused_controller_path ||= name && name.sub(/\:\:[^\:]+$/, '').sub(/Controller$/, '').underscore
|
18
18
|
end
|
19
19
|
|
@@ -44,6 +44,10 @@ module FocusedController
|
|
44
44
|
end
|
45
45
|
end
|
46
46
|
|
47
|
+
def _prefixes
|
48
|
+
super.dup.unshift(self.class.focused_controller_path)
|
49
|
+
end
|
50
|
+
|
47
51
|
def action_name
|
48
52
|
self.class.name.demodulize.underscore
|
49
53
|
end
|
@@ -7,7 +7,6 @@ begin
|
|
7
7
|
# haven't specifically chosen to receive it.
|
8
8
|
require 'rspec/rails/matchers'
|
9
9
|
require 'rspec/rails/adapters'
|
10
|
-
require 'rspec/rails/example/rails_example_group'
|
11
10
|
rescue LoadError
|
12
11
|
end
|
13
12
|
|
@@ -26,7 +25,9 @@ module FocusedController
|
|
26
25
|
end
|
27
26
|
|
28
27
|
if defined?(RSpec::Rails)
|
29
|
-
include RSpec::Rails::
|
28
|
+
include RSpec::Rails::SetupAndTeardownAdapter
|
29
|
+
include RSpec::Rails::TestUnitAssertionAdapter
|
30
|
+
include RSpec::Rails::Matchers
|
30
31
|
include RSpec::Rails::Matchers::RedirectTo
|
31
32
|
include RSpec::Rails::Matchers::RenderTemplate
|
32
33
|
end
|
@@ -28,7 +28,7 @@ module FocusedController
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def cookie_jar
|
31
|
-
@cookie_jar ||= ActionDispatch::Cookies::CookieJar.
|
31
|
+
@cookie_jar ||= ActionDispatch::Cookies::CookieJar.build(self)
|
32
32
|
end
|
33
33
|
|
34
34
|
def flash
|
@@ -59,6 +59,10 @@ module FocusedController
|
|
59
59
|
self
|
60
60
|
end
|
61
61
|
|
62
|
+
def delete(*)
|
63
|
+
self
|
64
|
+
end
|
65
|
+
|
62
66
|
def to_s
|
63
67
|
"#{helper_name}(#{args.each(&:to_s).join(', ')})"
|
64
68
|
end
|
@@ -172,5 +176,9 @@ module FocusedController
|
|
172
176
|
end
|
173
177
|
end
|
174
178
|
end
|
179
|
+
|
180
|
+
def optimize_routes_generation?(*)
|
181
|
+
false
|
182
|
+
end
|
175
183
|
end
|
176
184
|
end
|
data/test/app/Gemfile
CHANGED
data/test/app/app/models/post.rb
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
<td><%= post.body %></td>
|
14
14
|
<td><%= link_to 'Show', post %></td>
|
15
15
|
<td><%= link_to 'Edit', edit_post_path(post) %></td>
|
16
|
-
<td><%= link_to 'Destroy', post, :
|
16
|
+
<td><%= link_to 'Destroy', post, :method => :delete %></td>
|
17
17
|
</tr>
|
18
18
|
<% end %>
|
19
19
|
</table>
|
@@ -6,9 +6,6 @@ App::Application.configure do
|
|
6
6
|
# since you don't have to restart the web server when you make code changes.
|
7
7
|
config.cache_classes = false
|
8
8
|
|
9
|
-
# Log error messages when you accidentally call methods on nil.
|
10
|
-
config.whiny_nils = true
|
11
|
-
|
12
9
|
# Show full error reports and disable caching
|
13
10
|
config.consider_all_requests_local = true
|
14
11
|
config.action_controller.perform_caching = false
|
@@ -18,4 +15,6 @@ App::Application.configure do
|
|
18
15
|
|
19
16
|
# Only use best-standards-support built into browsers
|
20
17
|
config.action_dispatch.best_standards_support = :builtin
|
18
|
+
|
19
|
+
config.eager_load = false
|
21
20
|
end
|
@@ -11,9 +11,6 @@ App::Application.configure do
|
|
11
11
|
config.serve_static_assets = true
|
12
12
|
config.static_cache_control = "public, max-age=3600"
|
13
13
|
|
14
|
-
# Log error messages when you accidentally call methods on nil
|
15
|
-
config.whiny_nils = true
|
16
|
-
|
17
14
|
# Show full error reports and disable caching
|
18
15
|
config.consider_all_requests_local = true
|
19
16
|
config.action_controller.perform_caching = false
|
@@ -26,4 +23,6 @@ App::Application.configure do
|
|
26
23
|
|
27
24
|
# Print deprecation notices to the stderr
|
28
25
|
config.active_support.deprecation = :stderr
|
26
|
+
|
27
|
+
config.eager_load = false
|
29
28
|
end
|
@@ -5,3 +5,4 @@
|
|
5
5
|
# Make sure the secret is at least 30 characters and all random,
|
6
6
|
# no regular words or you'll be exposed to dictionary attacks.
|
7
7
|
App::Application.config.secret_token = '0bdf8849022e542ad15148bd7052bff324953e0b40f3545d0cb3f11f0347837d9cde80c10af262744b5725e85838a432fbd3bab2f2f82ede04da29877dfa5358'
|
8
|
+
App::Application.config.secret_key_base = '0bdf8849022e542ad15148bd7052bff324953e0b40f3545d0cb3f11f0347837d9cde80c10af262744b5725e85838a432fbd3bab2f2f82ede04da29877dfa5358'
|
data/test/helper.rb
CHANGED
@@ -19,8 +19,17 @@ end
|
|
19
19
|
# can, and capybara/rails assumes there is a full rails env present. So this is a
|
20
20
|
# hack to make it not fail.
|
21
21
|
module Rails
|
22
|
+
module VERSION
|
23
|
+
MAJOR = 3
|
24
|
+
MINOR = 0
|
25
|
+
TINY = 0
|
26
|
+
PRE = ""
|
27
|
+
|
28
|
+
STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
|
29
|
+
end
|
30
|
+
|
22
31
|
def self.version
|
23
|
-
|
32
|
+
VERSION::STRING
|
24
33
|
end
|
25
34
|
|
26
35
|
def self.root
|
@@ -29,6 +29,20 @@ module FocusedController
|
|
29
29
|
describe FunctionalTestHelper do
|
30
30
|
subject { FakePostsController::IndexTest.new }
|
31
31
|
|
32
|
+
def record_last_process
|
33
|
+
subject.singleton_class.class_eval do
|
34
|
+
attr_reader :last_process
|
35
|
+
|
36
|
+
def process(action_name, *args)
|
37
|
+
if ActionPack::VERSION::MAJOR < 4
|
38
|
+
args.unshift args.pop
|
39
|
+
end
|
40
|
+
|
41
|
+
@last_process = [action_name, *args]
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
32
46
|
it 'automatically determines the controller class' do
|
33
47
|
FakePostsController::IndexTest.controller_class.
|
34
48
|
must_equal FakePostsController::Index
|
@@ -37,28 +51,51 @@ module FocusedController
|
|
37
51
|
end
|
38
52
|
|
39
53
|
it "doesn't require using the action name to dispatch the action" do
|
40
|
-
|
41
|
-
attr_reader :last_process
|
54
|
+
record_last_process
|
42
55
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
56
|
+
parameters = {:foo => "bar"}
|
57
|
+
session = {:baz => "bat"}
|
58
|
+
flash = {:quux => "wibble"}
|
59
|
+
|
60
|
+
subject.get parameters, session, flash
|
61
|
+
subject.last_process.must_equal ['call', 'GET', parameters, session, flash]
|
62
|
+
|
63
|
+
subject.post parameters, session, flash
|
64
|
+
subject.last_process.must_equal ['call', 'POST', parameters, session, flash]
|
65
|
+
|
66
|
+
subject.put parameters, session, flash
|
67
|
+
subject.last_process.must_equal ['call', 'PUT', parameters, session, flash]
|
68
|
+
|
69
|
+
subject.delete parameters, session, flash
|
70
|
+
subject.last_process.must_equal ['call', 'DELETE', parameters, session, flash]
|
47
71
|
|
48
|
-
subject.
|
49
|
-
subject.last_process.must_equal ['call',
|
72
|
+
subject.head parameters, session, flash
|
73
|
+
subject.last_process.must_equal ['call', 'HEAD', parameters, session, flash]
|
74
|
+
end
|
75
|
+
|
76
|
+
describe "testing a non-focused controller" do
|
77
|
+
it "allows using the action name to dispatch the action" do
|
78
|
+
record_last_process
|
79
|
+
|
80
|
+
parameters = {:foo => "bar"}
|
81
|
+
session = {:baz => "bat"}
|
82
|
+
flash = {:quux => "wibble"}
|
50
83
|
|
51
|
-
|
52
|
-
|
84
|
+
subject.get :show, parameters, session, flash
|
85
|
+
subject.last_process.must_equal [:show, 'GET', parameters, session, flash]
|
53
86
|
|
54
|
-
|
55
|
-
|
87
|
+
subject.post :create, parameters, session, flash
|
88
|
+
subject.last_process.must_equal [:create, 'POST', parameters, session, flash]
|
56
89
|
|
57
|
-
|
58
|
-
|
90
|
+
subject.put :update, parameters, session, flash
|
91
|
+
subject.last_process.must_equal [:update, 'PUT', parameters, session, flash]
|
59
92
|
|
60
|
-
|
61
|
-
|
93
|
+
subject.delete :destroy, parameters, session, flash
|
94
|
+
subject.last_process.must_equal [:destroy, 'DELETE', parameters, session, flash]
|
95
|
+
|
96
|
+
subject.head :show, parameters, session, flash
|
97
|
+
subject.last_process.must_equal [:show, 'HEAD', parameters, session, flash]
|
98
|
+
end
|
62
99
|
end
|
63
100
|
end
|
64
101
|
end
|
data/test/unit/mixin_test.rb
CHANGED
@@ -30,8 +30,8 @@ module FocusedController
|
|
30
30
|
|
31
31
|
subject { klass.new }
|
32
32
|
|
33
|
-
it "has a .
|
34
|
-
klass.
|
33
|
+
it "has a .focused_controller_path of 'posts'" do
|
34
|
+
klass.focused_controller_path.must_equal 'posts'
|
35
35
|
end
|
36
36
|
|
37
37
|
it "has a .call which dispatches the #call action" do
|
@@ -27,8 +27,8 @@ module FocusedController
|
|
27
27
|
it 'creates routes that map to focused controllers' do
|
28
28
|
route_set.draw do
|
29
29
|
focused_controller_routes do
|
30
|
-
|
31
|
-
|
30
|
+
get 'posts' => 'PostsController::Index'
|
31
|
+
get 'posts/all' => 'posts#index'
|
32
32
|
|
33
33
|
resources :comments do
|
34
34
|
resources :replies
|
@@ -67,7 +67,7 @@ module FocusedController
|
|
67
67
|
|
68
68
|
route_set.draw do
|
69
69
|
focused_controller_routes do
|
70
|
-
|
70
|
+
get 'posts' => app
|
71
71
|
end
|
72
72
|
end
|
73
73
|
recognize('/posts').app.must_equal app
|
metadata
CHANGED
@@ -1,100 +1,94 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: focused_controller
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
5
|
-
prerelease:
|
4
|
+
version: 1.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Jon Leighton
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2013-10-22 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: actionpack
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '3.0'
|
20
|
+
- - <
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '4.1'
|
22
23
|
type: :runtime
|
23
24
|
prerelease: false
|
24
25
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
26
|
requirements:
|
27
|
-
- -
|
27
|
+
- - '>='
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: '3.0'
|
30
|
+
- - <
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '4.1'
|
30
33
|
- !ruby/object:Gem::Dependency
|
31
34
|
name: minitest
|
32
35
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
36
|
requirements:
|
35
37
|
- - ~>
|
36
38
|
- !ruby/object:Gem::Version
|
37
|
-
version: '2
|
39
|
+
version: '4.2'
|
38
40
|
type: :development
|
39
41
|
prerelease: false
|
40
42
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
43
|
requirements:
|
43
44
|
- - ~>
|
44
45
|
- !ruby/object:Gem::Version
|
45
|
-
version: '2
|
46
|
+
version: '4.2'
|
46
47
|
- !ruby/object:Gem::Dependency
|
47
48
|
name: capybara
|
48
49
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
50
|
requirements:
|
51
51
|
- - ~>
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
53
|
+
version: '2.1'
|
54
54
|
type: :development
|
55
55
|
prerelease: false
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
57
|
requirements:
|
59
58
|
- - ~>
|
60
59
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
60
|
+
version: '2.1'
|
62
61
|
- !ruby/object:Gem::Dependency
|
63
62
|
name: capybara_minitest_spec
|
64
63
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
64
|
requirements:
|
67
65
|
- - ~>
|
68
66
|
- !ruby/object:Gem::Version
|
69
|
-
version: '0
|
67
|
+
version: '1.0'
|
70
68
|
type: :development
|
71
69
|
prerelease: false
|
72
70
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
71
|
requirements:
|
75
72
|
- - ~>
|
76
73
|
- !ruby/object:Gem::Version
|
77
|
-
version: '0
|
74
|
+
version: '1.0'
|
78
75
|
- !ruby/object:Gem::Dependency
|
79
76
|
name: poltergeist
|
80
77
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
78
|
requirements:
|
83
79
|
- - ~>
|
84
80
|
- !ruby/object:Gem::Version
|
85
|
-
version: '
|
81
|
+
version: '1.3'
|
86
82
|
type: :development
|
87
83
|
prerelease: false
|
88
84
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
85
|
requirements:
|
91
86
|
- - ~>
|
92
87
|
- !ruby/object:Gem::Version
|
93
|
-
version: '
|
88
|
+
version: '1.3'
|
94
89
|
- !ruby/object:Gem::Dependency
|
95
90
|
name: rspec
|
96
91
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
92
|
requirements:
|
99
93
|
- - ~>
|
100
94
|
- !ruby/object:Gem::Version
|
@@ -102,7 +96,6 @@ dependencies:
|
|
102
96
|
type: :development
|
103
97
|
prerelease: false
|
104
98
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
99
|
requirements:
|
107
100
|
- - ~>
|
108
101
|
- !ruby/object:Gem::Version
|
@@ -110,7 +103,6 @@ dependencies:
|
|
110
103
|
- !ruby/object:Gem::Dependency
|
111
104
|
name: rspec-rails
|
112
105
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
106
|
requirements:
|
115
107
|
- - ~>
|
116
108
|
- !ruby/object:Gem::Version
|
@@ -118,7 +110,6 @@ dependencies:
|
|
118
110
|
type: :development
|
119
111
|
prerelease: false
|
120
112
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
113
|
requirements:
|
123
114
|
- - ~>
|
124
115
|
- !ruby/object:Gem::Version
|
@@ -126,7 +117,6 @@ dependencies:
|
|
126
117
|
- !ruby/object:Gem::Dependency
|
127
118
|
name: appraisal
|
128
119
|
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
120
|
requirements:
|
131
121
|
- - ~>
|
132
122
|
- !ruby/object:Gem::Version
|
@@ -134,7 +124,6 @@ dependencies:
|
|
134
124
|
type: :development
|
135
125
|
prerelease: false
|
136
126
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
127
|
requirements:
|
139
128
|
- - ~>
|
140
129
|
- !ruby/object:Gem::Version
|
@@ -149,14 +138,15 @@ files:
|
|
149
138
|
- .gitignore
|
150
139
|
- .travis.yml
|
151
140
|
- Appraisals
|
141
|
+
- CHANGELOG.md
|
152
142
|
- Gemfile
|
153
143
|
- LICENSE
|
154
144
|
- README.md
|
155
145
|
- Rakefile
|
156
146
|
- focused_controller.gemspec
|
157
|
-
- gemfiles/
|
158
|
-
- gemfiles/
|
159
|
-
- gemfiles/
|
147
|
+
- gemfiles/rails_3_1.gemfile
|
148
|
+
- gemfiles/rails_3_2.gemfile
|
149
|
+
- gemfiles/rails_4_0.gemfile
|
160
150
|
- lib/focused_controller.rb
|
161
151
|
- lib/focused_controller/action_name.rb
|
162
152
|
- lib/focused_controller/functional_test_helper.rb
|
@@ -235,27 +225,26 @@ files:
|
|
235
225
|
- test/unit/test_helper_test.rb
|
236
226
|
homepage: http://github.com/jonleighton/focused_controller
|
237
227
|
licenses: []
|
228
|
+
metadata: {}
|
238
229
|
post_install_message:
|
239
230
|
rdoc_options: []
|
240
231
|
require_paths:
|
241
232
|
- lib
|
242
233
|
required_ruby_version: !ruby/object:Gem::Requirement
|
243
|
-
none: false
|
244
234
|
requirements:
|
245
|
-
- -
|
235
|
+
- - '>='
|
246
236
|
- !ruby/object:Gem::Version
|
247
237
|
version: '0'
|
248
238
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
249
|
-
none: false
|
250
239
|
requirements:
|
251
|
-
- -
|
240
|
+
- - '>='
|
252
241
|
- !ruby/object:Gem::Version
|
253
242
|
version: '0'
|
254
243
|
requirements: []
|
255
244
|
rubyforge_project: focused_controller
|
256
|
-
rubygems_version: 1.
|
245
|
+
rubygems_version: 2.1.9
|
257
246
|
signing_key:
|
258
|
-
specification_version:
|
247
|
+
specification_version: 4
|
259
248
|
summary: Write Rails controllers with one class per action
|
260
249
|
test_files:
|
261
250
|
- test/acceptance/app_test.rb
|