tuning 0.3.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +1 -1
  3. data/README.md +80 -17
  4. data/Rakefile +3 -0
  5. data/lib/tuning.rb +7 -2
  6. data/lib/tuning/extensions/action_controller/base.rb +45 -0
  7. data/lib/tuning/extensions/action_mailer/base.rb +22 -0
  8. data/lib/tuning/extensions/action_view/base.rb +31 -0
  9. data/lib/tuning/extensions/active_record/base.rb +25 -0
  10. data/lib/tuning/locales/en.yml +12 -0
  11. data/lib/tuning/locales/es.yml +12 -0
  12. data/lib/tuning/railtie.rb +17 -3
  13. data/lib/tuning/validations/complexity.rb +22 -0
  14. data/lib/tuning/validations/count.rb +42 -0
  15. data/lib/tuning/validations/time.rb +38 -0
  16. data/lib/tuning/version.rb +1 -1
  17. data/test/controllers_test.rb +21 -0
  18. data/test/dummy/Rakefile +1 -2
  19. data/test/dummy/app/assets/javascripts/application.js +2 -2
  20. data/test/dummy/app/assets/stylesheets/application.css +6 -4
  21. data/test/dummy/app/mailers/user_mailer.rb +7 -0
  22. data/test/dummy/app/models/shop.rb +2 -0
  23. data/test/dummy/app/views/layouts/application.html.erb +0 -12
  24. data/test/dummy/app/views/layouts/market.html.erb +3 -0
  25. data/test/dummy/app/views/user_mailer/invite.text.erb +7 -0
  26. data/test/dummy/bin/bundle +0 -0
  27. data/test/dummy/bin/rails +1 -1
  28. data/test/dummy/bin/rake +0 -0
  29. data/test/dummy/bin/setup +29 -0
  30. data/test/dummy/config.ru +1 -1
  31. data/test/dummy/config/application.rb +3 -1
  32. data/test/dummy/config/boot.rb +1 -1
  33. data/test/dummy/config/database.yml +4 -22
  34. data/test/dummy/config/database.yml.travis +12 -0
  35. data/test/dummy/config/environment.rb +1 -1
  36. data/test/dummy/config/environments/development.rb +14 -2
  37. data/test/dummy/config/environments/production.rb +20 -25
  38. data/test/dummy/config/environments/test.rb +8 -10
  39. data/test/dummy/config/initializers/assets.rb +11 -0
  40. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  41. data/test/dummy/config/initializers/mime_types.rb +1 -2
  42. data/test/dummy/config/initializers/session_store.rb +1 -1
  43. data/test/dummy/config/locales/en.yml +22 -9
  44. data/test/dummy/config/routes.rb +2 -7
  45. data/test/dummy/config/secrets.yml +22 -0
  46. data/test/dummy/db/migrate/20161020200126_create_shops.rb +9 -0
  47. data/test/dummy/db/migrate/20161022144717_create_records.rb +6 -0
  48. data/test/dummy/db/schema.rb +15 -1
  49. data/test/dummy/log/test.log +70 -0
  50. data/test/dummy/public/404.html +20 -11
  51. data/test/dummy/public/422.html +20 -11
  52. data/test/dummy/public/500.html +19 -10
  53. data/test/helpers_test.rb +39 -0
  54. data/test/mailers_test.rb +10 -0
  55. data/test/records_test.rb +16 -0
  56. data/test/test_helper.rb +5 -18
  57. data/test/validations_test.rb +192 -0
  58. metadata +66 -47
  59. data/lib/tuning/action_controller/base.rb +0 -54
  60. data/lib/tuning/action_view/base.rb +0 -16
  61. data/test/active_trail_test.rb +0 -33
  62. data/test/content_tag_if_test.rb +0 -17
  63. data/test/dummy/README.rdoc +0 -28
  64. data/test/dummy/app/controllers/status_controller.rb +0 -27
  65. data/test/dummy/config/initializers/secret_token.rb +0 -13
  66. data/test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  67. data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  68. data/test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  69. data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  70. data/test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  71. data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  72. data/test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  73. data/test/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  74. data/test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  75. data/test/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  76. data/test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  77. data/test/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  78. data/test/status_test.rb +0 -55
@@ -0,0 +1,192 @@
1
+ require 'test_helper'
2
+
3
+ class ValidationsTest < ActiveSupport::TestCase
4
+
5
+ test 'methods' do
6
+ with_models.each do |model|
7
+ %i(complexity count time).each do |validator|
8
+ method = "validates_#{validator}_of"
9
+ assert model.respond_to?(method)
10
+ end
11
+ end
12
+ end
13
+
14
+ test 'complexity' do
15
+ with_models{
16
+ attr_accessor :password
17
+ validates :password, complexity: true
18
+ }.each do |model|
19
+ instance = model.new(password: nil)
20
+ assert_not instance.valid?
21
+
22
+ instance = model.new(password: 'aaaa')
23
+ assert_not instance.valid?
24
+ assert instance.errors.added?(:password, :too_easy)
25
+
26
+ instance = model.new(password: 'aaAA33__')
27
+ assert instance.valid?
28
+ end
29
+ end
30
+
31
+ test 'count' do
32
+ with_models{
33
+ attr_accessor :list
34
+ validates :list, count: true
35
+ }.each do |model|
36
+ instance = model.new(list: nil)
37
+ assert_not instance.valid?
38
+ assert instance.errors.added?(:list, :uncountable)
39
+ end
40
+
41
+ with_models{
42
+ attr_accessor :list
43
+ validates :list, count: { within: 1..2 }
44
+ }.each do |model|
45
+ instance = model.new(list: [1, 2, 3])
46
+ assert_not instance.valid?
47
+ assert instance.errors.added?(:list, :too_many)
48
+
49
+ instance = model.new(list: [])
50
+ assert_not instance.valid?
51
+ assert instance.errors.added?(:list, :too_few)
52
+
53
+ instance = model.new(list: [1])
54
+ assert instance.valid?
55
+ end
56
+
57
+ with_models{
58
+ attr_accessor :list
59
+ validates :list, count: { in: 1..2 }
60
+ }.each do |model|
61
+ instance = model.new(list: [1, 2, 3])
62
+ assert_not instance.valid?
63
+ assert instance.errors.added?(:list, :too_many)
64
+
65
+ instance = model.new(list: [])
66
+ assert_not instance.valid?
67
+ assert instance.errors.added?(:list, :too_few)
68
+
69
+ instance = model.new(list: [1])
70
+ assert instance.valid?
71
+ end
72
+
73
+ with_models{
74
+ attr_accessor :list
75
+ validates :list, count: { maximum: 2 }
76
+ }.each do |model|
77
+ instance = model.new(list: [1, 2, 3])
78
+ assert_not instance.valid?
79
+ assert instance.errors.added?(:list, :too_many)
80
+
81
+ instance = model.new(list: [])
82
+ assert instance.valid?
83
+ end
84
+
85
+ with_models{
86
+ attr_accessor :list
87
+ validates :list, count: { minimum: 1 }
88
+ }.each do |model|
89
+ instance = model.new(list: [])
90
+ assert_not instance.valid?
91
+ assert instance.errors.added?(:list, :too_few)
92
+
93
+ instance = model.new(list: [1])
94
+ assert instance.valid?
95
+ end
96
+ end
97
+
98
+ test 'time' do
99
+ with_models{
100
+ attr_accessor :delivered_at
101
+ validates :delivered_at, time: true
102
+ }.each do |model|
103
+ instance = model.new(delivered_at: nil)
104
+ assert_not instance.valid?
105
+ assert instance.errors.added?(:delivered_at, :not_a_time)
106
+ end
107
+
108
+ with_models{
109
+ attr_accessor :delivered_at
110
+ validates :delivered_at, time: { before: Proc.new { Date.today } }
111
+ }.each do |model|
112
+ instance = model.new(delivered_at: Date.today)
113
+ assert_not instance.valid?
114
+ assert instance.errors.added?(:delivered_at, :before)
115
+
116
+ instance = model.new(delivered_at: (Time.now + 1.day))
117
+ assert_not instance.valid?
118
+ assert instance.errors.added?(:delivered_at, :before)
119
+
120
+ instance = model.new(delivered_at: (Date.today - 1.day))
121
+ assert instance.valid?
122
+ end
123
+
124
+ with_models{
125
+ attr_accessor :delivered_at
126
+ validates :delivered_at, time: { before_or_equal_to: Date.today }
127
+ }.each do |model|
128
+ instance = model.new(delivered_at: (Time.now + 1.day))
129
+ assert_not instance.valid?
130
+ assert instance.errors.added?(:delivered_at, :before_or_equal_to)
131
+
132
+ instance = model.new(delivered_at: Date.today)
133
+ assert instance.valid?
134
+
135
+ instance = model.new(delivered_at: (Date.today - 1.day))
136
+ assert instance.valid?
137
+ end
138
+
139
+ with_models{
140
+ attr_accessor :processed_at, :delivered_at
141
+ validates :delivered_at, time: { after: ->(instance) { instance.processed_at } }
142
+ }.each do |model|
143
+ instance = model.new(delivered_at: Date.today, processed_at: Date.today)
144
+ assert_not instance.valid?
145
+ assert instance.errors.added?(:delivered_at, :after)
146
+
147
+ instance = model.new(delivered_at: (Date.today - 1.day), processed_at: Date.today)
148
+ assert_not instance.valid?
149
+ assert instance.errors.added?(:delivered_at, :after)
150
+
151
+ instance = model.new(delivered_at: (Time.now + 1.day), processed_at: Date.today)
152
+ assert instance.valid?
153
+ end
154
+
155
+ with_models{
156
+ attr_accessor :processed_at, :delivered_at
157
+ validates :delivered_at, time: { after_or_equal_to: :processed_at }
158
+ }.each do |model|
159
+ instance = model.new(delivered_at: (Date.today - 1.day), processed_at: Date.today)
160
+ assert_not instance.valid?
161
+ assert instance.errors.added?(:delivered_at, :after_or_equal_to)
162
+
163
+ instance = model.new(delivered_at: Date.today, processed_at: Date.today)
164
+ assert instance.valid?
165
+
166
+ instance = model.new(delivered_at: (Date.today + 1.day), processed_at: Date.today)
167
+ assert instance.valid?
168
+ end
169
+ end
170
+
171
+ private
172
+
173
+ def with_models(&block)
174
+ record = Class.new(ActiveRecord::Base)
175
+ model = Class.new do
176
+ include ActiveModel::Model
177
+ end
178
+ if block_given?
179
+ record.class_eval(&block)
180
+ model.class_eval(&block)
181
+ end
182
+ [set_constant('Record', record), set_constant('Model', model)]
183
+ end
184
+
185
+ def set_constant(name, value)
186
+ if self.class.const_defined?(name)
187
+ self.class.send :remove_const, name
188
+ end
189
+ self.class.const_set(name, value)
190
+ end
191
+
192
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tuning
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - mmontossi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-15 00:00:00.000000000 Z
11
+ date: 2016-10-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 4.0.0
19
+ version: 4.2.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 4.3.0
@@ -26,24 +26,38 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 4.0.0
29
+ version: 4.2.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 4.3.0
33
33
  - !ruby/object:Gem::Dependency
34
- name: sqlite3
34
+ name: pg
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '1.3'
39
+ version: '0.18'
40
40
  type: :development
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '1.3'
46
+ version: '0.18'
47
+ - !ruby/object:Gem::Dependency
48
+ name: mocha
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.1'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '1.1'
47
61
  description: Common tools used in rails extracted into a gem.
48
62
  email:
49
63
  - mmontossi@buyin.io
@@ -55,59 +69,65 @@ files:
55
69
  - README.md
56
70
  - Rakefile
57
71
  - lib/tuning.rb
58
- - lib/tuning/action_controller/base.rb
59
- - lib/tuning/action_view/base.rb
72
+ - lib/tuning/extensions/action_controller/base.rb
73
+ - lib/tuning/extensions/action_mailer/base.rb
74
+ - lib/tuning/extensions/action_view/base.rb
75
+ - lib/tuning/extensions/active_record/base.rb
76
+ - lib/tuning/locales/en.yml
77
+ - lib/tuning/locales/es.yml
60
78
  - lib/tuning/railtie.rb
79
+ - lib/tuning/validations/complexity.rb
80
+ - lib/tuning/validations/count.rb
81
+ - lib/tuning/validations/time.rb
61
82
  - lib/tuning/version.rb
62
- - test/active_trail_test.rb
63
- - test/content_tag_if_test.rb
64
- - test/dummy/README.rdoc
83
+ - test/controllers_test.rb
65
84
  - test/dummy/Rakefile
66
85
  - test/dummy/app/assets/javascripts/application.js
67
86
  - test/dummy/app/assets/stylesheets/application.css
68
87
  - test/dummy/app/controllers/application_controller.rb
69
- - test/dummy/app/controllers/status_controller.rb
70
88
  - test/dummy/app/helpers/application_helper.rb
89
+ - test/dummy/app/mailers/user_mailer.rb
90
+ - test/dummy/app/models/shop.rb
71
91
  - test/dummy/app/views/layouts/application.html.erb
92
+ - test/dummy/app/views/layouts/market.html.erb
93
+ - test/dummy/app/views/user_mailer/invite.text.erb
72
94
  - test/dummy/bin/bundle
73
95
  - test/dummy/bin/rails
74
96
  - test/dummy/bin/rake
97
+ - test/dummy/bin/setup
75
98
  - test/dummy/config.ru
76
99
  - test/dummy/config/application.rb
77
100
  - test/dummy/config/boot.rb
78
101
  - test/dummy/config/database.yml
102
+ - test/dummy/config/database.yml.travis
79
103
  - test/dummy/config/environment.rb
80
104
  - test/dummy/config/environments/development.rb
81
105
  - test/dummy/config/environments/production.rb
82
106
  - test/dummy/config/environments/test.rb
107
+ - test/dummy/config/initializers/assets.rb
83
108
  - test/dummy/config/initializers/backtrace_silencers.rb
109
+ - test/dummy/config/initializers/cookies_serializer.rb
84
110
  - test/dummy/config/initializers/filter_parameter_logging.rb
85
111
  - test/dummy/config/initializers/inflections.rb
86
112
  - test/dummy/config/initializers/mime_types.rb
87
- - test/dummy/config/initializers/secret_token.rb
88
113
  - test/dummy/config/initializers/session_store.rb
89
114
  - test/dummy/config/initializers/wrap_parameters.rb
90
115
  - test/dummy/config/locales/en.yml
91
116
  - test/dummy/config/routes.rb
117
+ - test/dummy/config/secrets.yml
118
+ - test/dummy/db/migrate/20161020200126_create_shops.rb
119
+ - test/dummy/db/migrate/20161022144717_create_records.rb
92
120
  - test/dummy/db/schema.rb
121
+ - test/dummy/log/test.log
93
122
  - test/dummy/public/404.html
94
123
  - test/dummy/public/422.html
95
124
  - test/dummy/public/500.html
96
125
  - test/dummy/public/favicon.ico
97
- - test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705
98
- - test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
99
- - test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
100
- - test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
101
- - test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
102
- - test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
103
- - test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705
104
- - test/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af
105
- - test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953
106
- - test/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994
107
- - test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6
108
- - test/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655
109
- - test/status_test.rb
126
+ - test/helpers_test.rb
127
+ - test/mailers_test.rb
128
+ - test/records_test.rb
110
129
  - test/test_helper.rb
130
+ - test/validations_test.rb
111
131
  homepage: https://github.com/mmontossi/tuning
112
132
  licenses:
113
133
  - MIT
@@ -120,7 +140,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
120
140
  requirements:
121
141
  - - ">="
122
142
  - !ruby/object:Gem::Version
123
- version: 1.9.3
143
+ version: 2.0.0
124
144
  required_rubygems_version: !ruby/object:Gem::Requirement
125
145
  requirements:
126
146
  - - ">="
@@ -128,57 +148,56 @@ required_rubygems_version: !ruby/object:Gem::Requirement
128
148
  version: '0'
129
149
  requirements: []
130
150
  rubyforge_project:
131
- rubygems_version: 2.4.5
151
+ rubygems_version: 2.5.1
132
152
  signing_key:
133
153
  specification_version: 4
134
154
  summary: Tuning for rails.
135
155
  test_files:
136
- - test/active_trail_test.rb
137
- - test/content_tag_if_test.rb
156
+ - test/controllers_test.rb
138
157
  - test/dummy/app/assets/javascripts/application.js
139
158
  - test/dummy/app/assets/stylesheets/application.css
140
159
  - test/dummy/app/controllers/application_controller.rb
141
- - test/dummy/app/controllers/status_controller.rb
142
160
  - test/dummy/app/helpers/application_helper.rb
161
+ - test/dummy/app/mailers/user_mailer.rb
162
+ - test/dummy/app/models/shop.rb
143
163
  - test/dummy/app/views/layouts/application.html.erb
164
+ - test/dummy/app/views/layouts/market.html.erb
165
+ - test/dummy/app/views/user_mailer/invite.text.erb
144
166
  - test/dummy/bin/bundle
145
167
  - test/dummy/bin/rails
146
168
  - test/dummy/bin/rake
169
+ - test/dummy/bin/setup
147
170
  - test/dummy/config/application.rb
148
171
  - test/dummy/config/boot.rb
149
172
  - test/dummy/config/database.yml
173
+ - test/dummy/config/database.yml.travis
150
174
  - test/dummy/config/environment.rb
151
175
  - test/dummy/config/environments/development.rb
152
176
  - test/dummy/config/environments/production.rb
153
177
  - test/dummy/config/environments/test.rb
178
+ - test/dummy/config/initializers/assets.rb
154
179
  - test/dummy/config/initializers/backtrace_silencers.rb
180
+ - test/dummy/config/initializers/cookies_serializer.rb
155
181
  - test/dummy/config/initializers/filter_parameter_logging.rb
156
182
  - test/dummy/config/initializers/inflections.rb
157
183
  - test/dummy/config/initializers/mime_types.rb
158
- - test/dummy/config/initializers/secret_token.rb
159
184
  - test/dummy/config/initializers/session_store.rb
160
185
  - test/dummy/config/initializers/wrap_parameters.rb
161
186
  - test/dummy/config/locales/en.yml
162
187
  - test/dummy/config/routes.rb
188
+ - test/dummy/config/secrets.yml
163
189
  - test/dummy/config.ru
190
+ - test/dummy/db/migrate/20161020200126_create_shops.rb
191
+ - test/dummy/db/migrate/20161022144717_create_records.rb
164
192
  - test/dummy/db/schema.rb
193
+ - test/dummy/log/test.log
165
194
  - test/dummy/public/404.html
166
195
  - test/dummy/public/422.html
167
196
  - test/dummy/public/500.html
168
197
  - test/dummy/public/favicon.ico
169
198
  - test/dummy/Rakefile
170
- - test/dummy/README.rdoc
171
- - test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705
172
- - test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
173
- - test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
174
- - test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
175
- - test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
176
- - test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
177
- - test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705
178
- - test/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af
179
- - test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953
180
- - test/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994
181
- - test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6
182
- - test/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655
183
- - test/status_test.rb
199
+ - test/helpers_test.rb
200
+ - test/mailers_test.rb
201
+ - test/records_test.rb
184
202
  - test/test_helper.rb
203
+ - test/validations_test.rb
@@ -1,54 +0,0 @@
1
- module Tuning
2
- module ActionController
3
- module Base
4
- extend ActiveSupport::Concern
5
-
6
- protected
7
-
8
- def error(exception=nil)
9
- if exception
10
- logger.error exception.message
11
- exception.backtrace.each { |line| logger.error line }
12
- end
13
- respond_to do |format|
14
- format.xml { head 500 }
15
- format.json { head 500 }
16
- format.any { render file: Rails.root.join('public', '500.html'), status: 500, layout: false }
17
- end
18
- end
19
-
20
- def not_found
21
- respond_to do |format|
22
- format.xml { head 404 }
23
- format.json { head 404 }
24
- format.any { render file: Rails.root.join('public', '404.html'), status: 404, layout: false }
25
- end
26
- end
27
-
28
- def unauthorized
29
- respond_to do |format|
30
- format.xml { head 401 }
31
- format.json { head 401 }
32
- format.any { render file: Rails.root.join('public', '422.html'), status: 401, layout: false }
33
- end
34
- end
35
-
36
- def forbidden
37
- respond_to do |format|
38
- format.xml { head 403 }
39
- format.json { head 403 }
40
- format.any { render file: Rails.root.join('public', '422.html'), status: 403, layout: false }
41
- end
42
- end
43
-
44
- def unprocessable_entity
45
- respond_to do |format|
46
- format.xml { head 422 }
47
- format.json { head 422 }
48
- format.any { render file: Rails.root.join('public', '422.html'), status: 422, layout: false }
49
- end
50
- end
51
-
52
- end
53
- end
54
- end