action_parameter 0.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: aa9cc72cb78003cacc9033f3fd23a76bdf326123
4
+ data.tar.gz: a718df9d730d24e5950ace918081cf65048a3798
5
+ SHA512:
6
+ metadata.gz: dd62ba7e769620aa895c2d5942c3144be5395acc9785cdf25e8a014053f71edbe84bcf7117e2380758990b28740af78ac56faa8fb775262cdfbb6542538d9736
7
+ data.tar.gz: 9065aa9389ec2ab881ddfffe93cf20bab5a6c7510a46d024ac615275f19d9b2424c2a029c63aba07764c3dad2543333f33e86721b2822af6192626b46dce8bb2
data/.gitignore ADDED
@@ -0,0 +1,9 @@
1
+ /.bundle
2
+ *.gem
3
+ .bundle
4
+ .idea
5
+ Gemfile.lock
6
+ log/*
7
+ pkg/*
8
+ .ruby-gemset
9
+ .ruby-version
data/Gemfile ADDED
@@ -0,0 +1,8 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ gem 'actionpack', '~> 3.0.0'
6
+ gem 'activesupport', '~> 3.0.0'
7
+ gem 'mocha', '~> 0.13.2', require: false
8
+ gem 'rake'
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2009-2013 Ezequiel Delpero. http://github.com/edelpero
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,125 @@
1
+ [![Code Climate](https://codeclimate.com/github/edelpero/action_parameter.png)](https://codeclimate.com/github/edelpero/action_parameter)
2
+
3
+ ActionParameter
4
+ ===============
5
+
6
+ ActionParameter helps you move all your parameter's logic into it's own class. This way you'll keep your controllers dry and they would be easier to test.
7
+
8
+ Install
9
+ -------
10
+
11
+ ActionParameter works with Rails 3.0 onwards and Ruby 1.9. You can add it to your Gemfile with:
12
+
13
+ ```ruby
14
+ gem 'action_parameter'
15
+ ```
16
+
17
+ Run the bundle command to install it.
18
+
19
+ Usage
20
+ -----
21
+
22
+ ####Generator
23
+
24
+ ```ruby
25
+ rails generate parameter [MODEL_NAME]
26
+ ```
27
+ Will create **app/parameters/[model_name]_parameters.rb**.
28
+
29
+ ####Controller Helpers
30
+
31
+ - **permitted_params:** Returns an ActionParameter instance.
32
+
33
+ ```ruby
34
+ permitted_params(options={})
35
+ ```
36
+
37
+ #####Options Hash
38
+
39
+ * **options** - Hash with two valid keys **:class** and **:locals**.
40
+ * **options[:class]** - Symbol value with the name of the Parameters class you want to use.
41
+ * **options[:locals]** - Hash used to create helper methods available for the ActionParameter instance.
42
+
43
+ #####Example 1
44
+
45
+ ```ruby
46
+ # app/controllers/people_controllers.rb
47
+ class PeopleController < ActionController::Base
48
+ def create
49
+ Person.create(permitted_params.permit) # This will call to PersonParameters' permit method
50
+ end
51
+ end
52
+ ```
53
+
54
+ ```ruby
55
+ # app/parameters/person_parameters.rb
56
+ class PersonParameters < ActionParameter::Base
57
+ def permit
58
+ params.require(:person).permit(:name, :age)
59
+ end
60
+ end
61
+ ```
62
+
63
+ #####Example 2
64
+
65
+ ```ruby
66
+ # app/controllers/people_controllers.rb
67
+ class PeopleController < ActionController::Base
68
+ def create
69
+ Person.create(permitted_params(class: :user).sign_up) # This will call to UserParameters' sign_up method
70
+ end
71
+ end
72
+ ```
73
+
74
+ ```ruby
75
+ # app/parameters/user_parameters.rb
76
+ class UserParameters < ActionParameter::Base
77
+ def sign_up
78
+ params.require(:person).permit(:name, :age)
79
+ end
80
+ end
81
+ ```
82
+
83
+ ####Parameter Helpers
84
+
85
+ #####Default Helpers
86
+
87
+ - **params:** Returns params from the current controller request which instantiated the Parameter class.
88
+ - **controller_name:** Returns the controller's name from which the Parameter class was instantiated.
89
+ - **action_name:** Returns the action's name from the controller from which the Parameter class was instantiated.
90
+
91
+ #####Creating New Helpers
92
+
93
+ If you want to create new helper methods for you parameters class, just pass a hash using **:locals**. Let say you want to make **@current_user** available for the UserParameter's class, then you'll need to use the **:locals** option to tell the UserParameters class to create a new helper that returns **@current_user**.
94
+
95
+ ```ruby
96
+ permitted_params(class: :user, locals: { current_user: @current_user,
97
+ another_helper: @value })
98
+ ```
99
+ This will create **current_user** and **another_helper** methods and they will be available in UserParameters class.
100
+
101
+ #####Example
102
+
103
+ ```ruby
104
+ # app/controllers/people_controllers.rb
105
+ class UsersController < ActionController::Base
106
+ def create
107
+ Person.create(permitted_params(locals: { current_user: @current_user }).sign_up)
108
+ # This will call to UserParameters' sign_up method and will also create a
109
+ # helper method named 'current_user' which will return @current_user
110
+ end
111
+ end
112
+ ```
113
+
114
+ ```ruby
115
+ # app/parameters/user_parameters.rb
116
+ class UserParameters < ActionParameter::Base
117
+ def sign_up
118
+ if current_user # Method created using :locals option
119
+ params.permit!
120
+ else
121
+ params.require(:person).permit(:name, :age)
122
+ end
123
+ end
124
+ end
125
+ ```
data/README.rdoc ADDED
@@ -0,0 +1,125 @@
1
+ {<img src="https://codeclimate.com/github/edelpero/action_parameter.png" />}[https://codeclimate.com/github/edelpero/action_parameter]
2
+
3
+ ActionParameter
4
+ ===============
5
+
6
+ ActionParameter helps you move all your parameter's logic into it's own class. This way you'll keep your controllers dry and they would be easier to test.
7
+
8
+ Install
9
+ -------
10
+
11
+ ActionParameter works with Rails 3.0 onwards and Ruby 1.9. You can add it to your Gemfile with:
12
+
13
+ ```ruby
14
+ gem 'action_parameter'
15
+ ```
16
+
17
+ Run the bundle command to install it.
18
+
19
+ Usage
20
+ -----
21
+
22
+ ####Generator
23
+
24
+ ```ruby
25
+ rails generate parameter [MODEL_NAME]
26
+ ```
27
+ Will create **app/parameters/[model_name]_parameters.rb**.
28
+
29
+ ####Controller Helpers
30
+
31
+ - **permitted_params:** Returns an ActionParameter instance.
32
+
33
+ ```ruby
34
+ permitted_params(options={})
35
+ ```
36
+
37
+ #####Options Hash
38
+
39
+ * **options** - Hash with two valid keys **:class** and **:locals**.
40
+ * **options[:class]** - Symbol value with the name of the Parameters class you want to use.
41
+ * **options[:locals]** - Hash used to create helper methods available for the ActionParameter instance.
42
+
43
+ #####Example 1
44
+
45
+ ```ruby
46
+ # app/controllers/people_controllers.rb
47
+ class PeopleController < ActionController::Base
48
+ def create
49
+ Person.create(permitted_params.permit) # This will call to PersonParameters' permit method
50
+ end
51
+ end
52
+ ```
53
+
54
+ ```ruby
55
+ # app/parameters/person_parameters.rb
56
+ class PersonParameters < ActionParameter::Base
57
+ def permit
58
+ params.require(:person).permit(:name, :age)
59
+ end
60
+ end
61
+ ```
62
+
63
+ #####Example 2
64
+
65
+ ```ruby
66
+ # app/controllers/people_controllers.rb
67
+ class PeopleController < ActionController::Base
68
+ def create
69
+ Person.create(permitted_params(class: :user).sign_up) # This will call to UserParameters' sign_up method
70
+ end
71
+ end
72
+ ```
73
+
74
+ ```ruby
75
+ # app/parameters/user_parameters.rb
76
+ class UserParameters < ActionParameter::Base
77
+ def sign_up
78
+ params.require(:person).permit(:name, :age)
79
+ end
80
+ end
81
+ ```
82
+
83
+ ####Parameter Helpers
84
+
85
+ #####Default Helpers
86
+
87
+ - **params:** Returns params from the current controller request which instantiated the Parameter class.
88
+ - **controller_name:** Returns the controller's name from which the Parameter class was instantiated.
89
+ - **action_name:** Returns the action's name from the controller from which the Parameter class was instantiated.
90
+
91
+ #####Creating New Helpers
92
+
93
+ If you want to create new helper methods for you parameters class, just pass a hash using **:locals**. Let say you want to make **@current_user** available for the UserParameter's class, then you'll need to use the **:locals** option to tell the UserParameters class to create a new helper that returns **@current_user**.
94
+
95
+ ```ruby
96
+ permitted_params(class: :user, locals: { current_user: @current_user,
97
+ another_helper: @value })
98
+ ```
99
+ This will create **current_user** and **another_helper** methods and they will be available in UserParameters class.
100
+
101
+ #####Example
102
+
103
+ ```ruby
104
+ # app/controllers/people_controllers.rb
105
+ class UsersController < ActionController::Base
106
+ def create
107
+ Person.create(permitted_params(locals: { current_user: @current_user }).sign_up)
108
+ # This will call to UserParameters' sign_up method and will also create a
109
+ # helper method named 'current_user' which will return @current_user
110
+ end
111
+ end
112
+ ```
113
+
114
+ ```ruby
115
+ # app/parameters/user_parameters.rb
116
+ class UserParameters < ActionParameter::Base
117
+ def sign_up
118
+ if current_user # Method created using :locals option
119
+ params.permit!
120
+ else
121
+ params.require(:person).permit(:name, :age)
122
+ end
123
+ end
124
+ end
125
+ ```
data/Rakefile ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env rake
2
+ begin
3
+ require 'bundler/setup'
4
+ require 'bundler/gem_tasks'
5
+ rescue LoadError
6
+ raise 'You must `gem install bundler` and `bundle install` to run rake tasks'
7
+ end
8
+
9
+ require 'rdoc/task'
10
+
11
+ RDoc::Task.new(:rdoc) do |rdoc|
12
+ rdoc.rdoc_dir = 'rdoc'
13
+ rdoc.title = 'ActionParameter'
14
+ rdoc.options << '--line-numbers'
15
+ rdoc_main = 'README.md'
16
+ rdoc.rdoc_files.include('README.md')
17
+ rdoc.rdoc_files.include('lib/**/*.rb')
18
+ end
19
+
20
+ require 'rake/testtask'
21
+
22
+ Rake::TestTask.new(:test) do |t|
23
+ t.libs << 'lib'
24
+ t.libs << 'test'
25
+ t.pattern = 'test/**/*_test.rb'
26
+ t.verbose = false
27
+ end
28
+
29
+ task :default => :test
@@ -0,0 +1,22 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "action_parameter/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "action_parameter"
7
+ s.version = ActionParameter::VERSION.dup
8
+ s.platform = Gem::Platform::RUBY
9
+ s.summary = "Single Responsability Principle for Rails Controller's Parameters."
10
+ s.email = "edelpero@gmail.com"
11
+ s.homepage = "https://github.com/edelpero/action_parameter"
12
+ s.description = "ActionParameter helps you move all your parameter's logic into it's own class. This way you'll keep your controllers dry and they would be easier to test."
13
+ s.authors = ['Ezequiel Delpero']
14
+ s.license = "MIT"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- test/*`.split("\n")
18
+ s.require_paths = ["lib"]
19
+
20
+ s.add_dependency('activesupport', '>= 3.0.0', '< 4.1')
21
+ s.add_dependency('actionpack', '>= 3.0.0', '< 4.1')
22
+ end
@@ -0,0 +1,11 @@
1
+ require 'action_pack'
2
+ require 'active_support'
3
+ require 'action_parameter/railtie' if defined?(Rails)
4
+
5
+ module ActionParameter
6
+ extend ActiveSupport::Autoload
7
+
8
+ autoload :Base, 'action_parameter/base.rb'
9
+ autoload :Helpers, 'action_parameter/helpers.rb'
10
+
11
+ end
@@ -0,0 +1,51 @@
1
+ module ActionParameter
2
+ class Base
3
+
4
+ attr_accessor :params
5
+
6
+ # initialize: Initialize parameter class.
7
+ #
8
+ # == Options
9
+ #
10
+ # * <tt>params</tt> - The ActionController::Parameters instance from the controller who initialize this.
11
+ # * <tt>locals</tt> - Hash used to create helper methods available for the ActionParameter instance.
12
+ def initialize(params, locals = {})
13
+ @params = params
14
+ create_methods(locals)
15
+ end
16
+
17
+ protected
18
+
19
+ # create_methods: Creates instance methods using locals hash's keys and values, params[:controller] and params[:action].
20
+ #
21
+ # == Options
22
+ #
23
+ # * <tt>locals</tt> - Hash used to create helper methods available for the ActionParameter instance. Methods will be named using the hash keys and they'll return the hash values.
24
+ #
25
+ # == Examples
26
+ #
27
+ # create_methods(current_user: @user, another_key: @another_variable)
28
+ #
29
+ # Will create 'current_user', 'another_key', 'controller_name' and 'action_name' instance methods.
30
+ # This methods will be aviable only in the current parameter class where create_method was called.
31
+ # 'current_user' will return @user.
32
+ # 'another_key' will return @another_variable
33
+ # 'controller_name' will return the controller instance's name
34
+ # 'action_name' will return the controller action instance's name
35
+ def create_methods(locals = {})
36
+ locals = {} unless locals
37
+
38
+ locals.merge!(controller_name: params[:controller],
39
+ action_name: params[:action])
40
+
41
+ klass = class << self; self; end
42
+
43
+ locals.each do |method_name, value|
44
+ klass.send(:define_method, method_name) do
45
+ value
46
+ end
47
+ end
48
+ end
49
+
50
+ end
51
+ end
@@ -0,0 +1,49 @@
1
+ module ActionParameter
2
+ module Helpers
3
+
4
+ protected
5
+
6
+ # permitted_params: Returns an ActionParameter instance.
7
+ #
8
+ # == Options
9
+ #
10
+ # * <tt>options</tt> - Hash with two valid keys: class and locals.
11
+ # * <tt>options[:class]</tt> - Symbol value with the name of the Parameters class you want to use.
12
+ # * <tt>options[:locals]</tt> - Hash used to create helper methods available for the ActionParameter instance.
13
+ #
14
+ # == Examples
15
+ #
16
+ # permitted_params(class: customer, locals: { current_user: @user }) # called from UsersController
17
+ #
18
+ # This will create an instance of CustomerParameters and also will make
19
+ # 'current_user', 'params', 'controller_name' and 'action_name' helper methods
20
+ # available on the CustomerParameters instace.
21
+ def permitted_params(options = {})
22
+ parameter_class = permitted_params_class(options[:class])
23
+ @permitted_params ||= parameter_class.new(params, options[:locals])
24
+ end
25
+
26
+ # permitted_params_class: Returns a Parameters class.
27
+ #
28
+ # == Options
29
+ #
30
+ # * <tt>options[:class]</tt> - Symbol value with the name of the Parameters class you want to use.
31
+ #
32
+ # == Examples
33
+ #
34
+ # permitted_params_class(class: :customer) # called from PeopleController
35
+ # # => CustomerParameters
36
+ #
37
+ # permitted_params_class(class: :customers) # called from PeopleController
38
+ # # => CustomersParameters
39
+ #
40
+ # permitted_params_class() # called from PeopleController
41
+ # # => PersonParameters
42
+ def permitted_params_class(class_name = nil)
43
+ class_name = class_name || params[:controller].to_s.singularize
44
+ formatted_class_name = class_name.to_s.camelcase
45
+ @permitted_params_class ||= "#{formatted_class_name}Parameters".constantize
46
+ end
47
+
48
+ end
49
+ end
@@ -0,0 +1,13 @@
1
+ require 'rails/railtie'
2
+
3
+ module ActionParameter
4
+ class Railtie < Rails::Railtie
5
+
6
+ initializer "action_parameter.helpers" do |app|
7
+ ActiveSupport.on_load :action_controller do
8
+ include ActionParameter::Helpers
9
+ end
10
+ end
11
+
12
+ end
13
+ end
@@ -0,0 +1,3 @@
1
+ module ActionParameter
2
+ VERSION = "0.0.1".freeze
3
+ end
@@ -0,0 +1,8 @@
1
+ Description:
2
+ Explain the generator
3
+
4
+ Example:
5
+ rails generate parameter Thing
6
+
7
+ This will create:
8
+ what/will/it/create
@@ -0,0 +1,11 @@
1
+ require 'rails/generators'
2
+ require 'rails/generators/named_base'
3
+
4
+ class ParameterGenerator < Rails::Generators::NamedBase
5
+ source_root File.expand_path('../templates', __FILE__)
6
+
7
+ def parameter
8
+ template "parameter_class.rb", "app/parameters/#{name.underscore}_parameters.rb"
9
+ end
10
+
11
+ end
@@ -0,0 +1,3 @@
1
+ class <%= name.camelcase %>Parameters < ActionParameter::Base
2
+
3
+ end
@@ -0,0 +1,61 @@
1
+ require 'test_helper'
2
+
3
+ class UsersController < ApplicationController
4
+ include ActionParameter::Helpers
5
+
6
+ def permitted_params_without_arguments
7
+ permitted_params
8
+ render nothing: true
9
+ end
10
+
11
+ def permitted_params_with_class_attribute
12
+ permitted_params(class: :customer)
13
+ render nothing: true
14
+ end
15
+
16
+ def permitted_params_with_locals
17
+ permitted_params(locals: { current_user: 'user'})
18
+ render nothing: true
19
+ end
20
+
21
+ end
22
+
23
+ class UserParameters < ActionParameter::Base
24
+ end
25
+
26
+ class CustomerParameters < ActionParameter::Base
27
+ end
28
+
29
+ class ActionParameterTest < ActionController::TestCase
30
+ tests UsersController
31
+
32
+ def test_permitted_params_without_arguments_is_an_instance_of_user_parameters
33
+ get :permitted_params_without_arguments
34
+ assert_equal('UserParameters', assigns(:permitted_params).class.to_s)
35
+ end
36
+
37
+ def test_permitted_params_with_class_attribute_returns_an_instance_of_customer_parameters
38
+ get :permitted_params_with_class_attribute
39
+ assert_equal('CustomerParameters', assigns(:permitted_params).class.to_s)
40
+ end
41
+
42
+ def test_permitted_params_instance_params_helper_method
43
+ get :permitted_params_without_arguments
44
+ assert_equal(@request.params, assigns(:permitted_params).params)
45
+ end
46
+
47
+ def test_permitted_params_instance_controller_name_helper_method
48
+ get :permitted_params_without_arguments
49
+ assert_equal(@request.params['controller'], assigns(:permitted_params).controller_name)
50
+ end
51
+
52
+ def test_permitted_params_instance_action_name_helper_method
53
+ get :permitted_params_without_arguments
54
+ assert_equal(@request.params['action'], assigns(:permitted_params).action_name)
55
+ end
56
+
57
+ def test_permitted_params_with_locals_should_respond_to_current_user_method
58
+ get :permitted_params_with_locals
59
+ assert_equal(true, assigns(:permitted_params).respond_to?(:current_user))
60
+ end
61
+ end
@@ -0,0 +1,30 @@
1
+ require 'bundler'
2
+
3
+ Bundler.setup
4
+ require 'test/unit'
5
+ require 'mocha/setup'
6
+
7
+ # Configure Rails
8
+ ENV["RAILS_ENV"] = "test"
9
+
10
+ require 'active_support'
11
+ require 'action_controller'
12
+ require 'action_dispatch/middleware/flash'
13
+
14
+ $:.unshift File.expand_path('../../lib', __FILE__)
15
+ require 'action_parameter'
16
+
17
+ ActionParameter::Routes = ActionDispatch::Routing::RouteSet.new
18
+ ActionParameter::Routes.draw do
19
+ get '/:controller(/:action(/:id))'
20
+ end
21
+
22
+ class ApplicationController < ActionController::Base
23
+ include ActionParameter::Routes.url_helpers
24
+ end
25
+
26
+ class ActiveSupport::TestCase
27
+ setup do
28
+ @routes = ActionParameter::Routes
29
+ end
30
+ end
metadata ADDED
@@ -0,0 +1,103 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: action_parameter
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Ezequiel Delpero
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-10-08 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.0
20
+ - - <
21
+ - !ruby/object:Gem::Version
22
+ version: '4.1'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 3.0.0
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: '4.1'
33
+ - !ruby/object:Gem::Dependency
34
+ name: actionpack
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - '>='
38
+ - !ruby/object:Gem::Version
39
+ version: 3.0.0
40
+ - - <
41
+ - !ruby/object:Gem::Version
42
+ version: '4.1'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - '>='
48
+ - !ruby/object:Gem::Version
49
+ version: 3.0.0
50
+ - - <
51
+ - !ruby/object:Gem::Version
52
+ version: '4.1'
53
+ description: ActionParameter helps you move all your parameter's logic into it's own
54
+ class. This way you'll keep your controllers dry and they would be easier to test.
55
+ email: edelpero@gmail.com
56
+ executables: []
57
+ extensions: []
58
+ extra_rdoc_files: []
59
+ files:
60
+ - .gitignore
61
+ - Gemfile
62
+ - MIT-LICENSE
63
+ - README.md
64
+ - README.rdoc
65
+ - Rakefile
66
+ - action_parameter.gemspec
67
+ - lib/action_parameter.rb
68
+ - lib/action_parameter/base.rb
69
+ - lib/action_parameter/helpers.rb
70
+ - lib/action_parameter/railtie.rb
71
+ - lib/action_parameter/version.rb
72
+ - lib/generators/parameter/USAGE
73
+ - lib/generators/parameter/parameter_generator.rb
74
+ - lib/generators/parameter/templates/parameter_class.rb
75
+ - test/action_parameter_test.rb
76
+ - test/test_helper.rb
77
+ homepage: https://github.com/edelpero/action_parameter
78
+ licenses:
79
+ - MIT
80
+ metadata: {}
81
+ post_install_message:
82
+ rdoc_options: []
83
+ require_paths:
84
+ - lib
85
+ required_ruby_version: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ required_rubygems_version: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ requirements: []
96
+ rubyforge_project:
97
+ rubygems_version: 2.1.3
98
+ signing_key:
99
+ specification_version: 4
100
+ summary: Single Responsability Principle for Rails Controller's Parameters.
101
+ test_files:
102
+ - test/action_parameter_test.rb
103
+ - test/test_helper.rb