chupakabra_tools 0.0.20 → 0.0.22

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.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/.DS_Store +0 -0
  3. data/.idea/chupakabra_tools.iml +18 -9
  4. data/.idea/workspace.xml +191 -152
  5. data/Gemfile.lock +21 -26
  6. data/chupakabra_tools.gemspec +2 -2
  7. data/lib/.DS_Store +0 -0
  8. data/lib/chupakabra_tools.rb +7 -21
  9. data/lib/chupakabra_tools/.DS_Store +0 -0
  10. data/lib/chupakabra_tools/active_record.rb +54 -52
  11. data/lib/chupakabra_tools/class_helper.rb +256 -231
  12. data/lib/chupakabra_tools/convert.rb +62 -62
  13. data/lib/chupakabra_tools/http.rb +19 -17
  14. data/lib/chupakabra_tools/number_as_text.rb +48 -46
  15. data/lib/chupakabra_tools/security.rb +90 -51
  16. data/lib/chupakabra_tools/strings.rb +34 -37
  17. data/lib/chupakabra_tools/transliterator.rb +15 -13
  18. data/lib/chupakabra_tools/validations.rb +75 -73
  19. data/lib/chupakabra_tools/xml_parser.rb +52 -0
  20. data/lib/locales/chupakabra_tools.en.yml +28 -0
  21. data/lib/locales/chupakabra_tools.ru.yml +28 -0
  22. metadata +9 -30
  23. data/lib/chupakabra_tools/active_enum_extended.rb +0 -53
  24. data/lib/chupakabra_tools/data_type.rb +0 -12
  25. data/lib/chupakabra_tools/deletion_status.rb +0 -6
  26. data/lib/chupakabra_tools/education_level.rb +0 -8
  27. data/lib/chupakabra_tools/file_type.rb +0 -13
  28. data/lib/chupakabra_tools/internet_file_process_status.rb +0 -9
  29. data/lib/chupakabra_tools/json_status.rb +0 -12
  30. data/lib/chupakabra_tools/logging.rb +0 -135
  31. data/lib/chupakabra_tools/marriage_status.rb +0 -10
  32. data/lib/chupakabra_tools/predefined_time_intervals.rb +0 -23
  33. data/lib/chupakabra_tools/set_management_result.rb +0 -9
  34. data/lib/chupakabra_tools/sex.rb +0 -6
  35. data/lib/chupakabra_tools/time_interval.rb +0 -542
  36. data/lib/chupakabra_tools/xml/xml_parser.rb +0 -54
@@ -1,10 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- chupakabra_tools (0.0.20)
4
+ chupakabra_tools (0.0.22)
5
5
  active_enum
6
6
  activerecord
7
- activesupport
8
7
  nokogiri
9
8
  russian
10
9
  will_paginate
@@ -12,34 +11,30 @@ PATH
12
11
  GEM
13
12
  remote: https://rubygems.org/
14
13
  specs:
15
- active_enum (0.9.1)
16
- activemodel (4.1.1)
17
- activesupport (= 4.1.1)
18
- builder (~> 3.1)
19
- activerecord (4.1.1)
20
- activemodel (= 4.1.1)
21
- activesupport (= 4.1.1)
22
- arel (~> 5.0.0)
23
- activesupport (4.1.1)
24
- i18n (~> 0.6, >= 0.6.9)
25
- json (~> 1.7, >= 1.7.7)
26
- minitest (~> 5.1)
27
- thread_safe (~> 0.1)
28
- tzinfo (~> 1.1)
29
- arel (5.0.1.20140414130214)
30
- builder (3.2.2)
31
- i18n (0.6.9)
32
- json (1.8.1)
14
+ active_enum (0.9.12)
15
+ activesupport (~> 3.0)
16
+ activemodel (3.2.12)
17
+ activesupport (= 3.2.12)
18
+ builder (~> 3.0.0)
19
+ activerecord (3.2.12)
20
+ activemodel (= 3.2.12)
21
+ activesupport (= 3.2.12)
22
+ arel (~> 3.0.2)
23
+ tzinfo (~> 0.3.29)
24
+ activesupport (3.2.12)
25
+ i18n (~> 0.6)
26
+ multi_json (~> 1.0)
27
+ arel (3.0.2)
28
+ builder (3.0.4)
29
+ i18n (0.6.11)
33
30
  mini_portile (0.6.0)
34
- minitest (5.3.3)
35
- nokogiri (1.6.2.1)
31
+ multi_json (1.10.1)
32
+ nokogiri (1.6.3.1)
36
33
  mini_portile (= 0.6.0)
37
34
  russian (0.6.0)
38
35
  i18n (>= 0.5.0)
39
- thread_safe (0.3.3)
40
- tzinfo (1.1.0)
41
- thread_safe (~> 0.1)
42
- will_paginate (3.0.5)
36
+ tzinfo (0.3.35)
37
+ will_paginate (3.0.7)
43
38
 
44
39
  PLATFORMS
45
40
  ruby
@@ -5,7 +5,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
 
6
6
  Gem::Specification.new do |gem|
7
7
  gem.name = "chupakabra_tools"
8
- gem.version = '0.0.20'
8
+ gem.version = '0.0.22'
9
9
  gem.authors = ["Mitrofanov Dmitry"]
10
10
  gem.email = ["mdima@it-guru.biz"]
11
11
  gem.description = %q{Chupakbara Tools Set for Easy Life}
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ["lib"]
19
19
 
20
- gem.add_dependency "activesupport"
20
+ #gem.add_dependency "activesupport"
21
21
  gem.add_dependency "activerecord"
22
22
  gem.add_dependency "active_enum"
23
23
  gem.add_dependency "russian"
Binary file
@@ -1,27 +1,13 @@
1
- require "chupakabra_tools/time_interval"
2
- require "chupakabra_tools/predefined_time_intervals"
3
- require "chupakabra_tools/security"
4
- require "chupakabra_tools/http"
5
- require "chupakabra_tools/validations"
6
- require "chupakabra_tools/number_as_text"
7
1
  require "chupakabra_tools/active_record"
8
- require "chupakabra_tools/convert"
9
- require "chupakabra_tools/transliterator"
10
- require "chupakabra_tools/logging"
11
2
  require "chupakabra_tools/class_helper"
12
- require "chupakabra_tools/data_type"
13
- require "chupakabra_tools/file_type"
14
- require "chupakabra_tools/json_status"
15
- require 'chupakabra_tools/set_management_result'
16
- require "chupakabra_tools/active_enum_extended"
17
- require "chupakabra_tools/internet_file_process_status"
18
- require "chupakabra_tools/deletion_status"
3
+ require "chupakabra_tools/convert"
4
+ require "chupakabra_tools/http"
5
+ require "chupakabra_tools/number_as_text"
6
+ require "chupakabra_tools/security"
19
7
  require "chupakabra_tools/strings"
20
- require "chupakabra_tools/sex"
21
- require "chupakabra_tools/marriage_status"
22
-
23
-
24
- require "chupakabra_tools/xml/xml_parser"
8
+ require "chupakabra_tools/transliterator"
9
+ require "chupakabra_tools/validations"
10
+ require "chupakabra_tools/xml_parser"
25
11
 
26
12
 
27
13
 
@@ -1,64 +1,66 @@
1
- module ChupakabraTools::ActiveRecord
2
- def sanitize_order(sort_order = nil)
3
- return 'asc' if sort_order.nil? || sort_order.empty?
4
- return 'asc' if sort_order.downcase == 'asc'
5
- return 'desc' if sort_order.downcase == 'desc'
6
- 'asc'
7
- end
1
+ module ChupakabraTools
2
+ module ActiveRecord
3
+ def sanitize_order(sort_order = nil)
4
+ return 'asc' if sort_order.nil? || sort_order.empty?
5
+ return 'asc' if sort_order.downcase == 'asc'
6
+ return 'desc' if sort_order.downcase == 'desc'
7
+ 'asc'
8
+ end
8
9
 
9
- def self.invert_order(sort_order = nil)
10
- return 'desc' if sort_order.nil? || sort_order.empty?
11
- sort_order = sanitize_sortorder(sort_order)
12
- return 'desc' if sort_order.downcase == 'asc'
13
- 'asc'
14
- end
10
+ def self.invert_order(sort_order = nil)
11
+ return 'desc' if sort_order.nil? || sort_order.empty?
12
+ sort_order = sanitize_sortorder(sort_order)
13
+ return 'desc' if sort_order.downcase == 'asc'
14
+ 'asc'
15
+ end
15
16
 
16
- def sanitize_sort_by(sort_by)
17
+ def sanitize_sort_by(sort_by)
17
18
 
18
19
 
19
- unless sort_by.nil? || sort_by.empty?
20
+ unless sort_by.nil? || sort_by.empty?
20
21
 
21
- fields_to_sort.each do |fts|
22
- if fts.downcase == sort_by
23
- return sort_by
24
- end
25
- end
26
- return default_sort_by
27
- end
22
+ fields_to_sort.each do |fts|
23
+ if fts.downcase == sort_by
24
+ return sort_by
25
+ end
26
+ end
27
+ return default_sort_by
28
+ end
28
29
 
29
- default_sort_by.nil? || default_sort_by.empty? ? default_sort_by : 'id'
30
- end
30
+ default_sort_by.nil? || default_sort_by.empty? ? default_sort_by : 'id'
31
+ end
31
32
 
32
33
 
33
- def self.default_sort_field
34
- defined?(@default_sort_field) ? @default_sort_field : nil
35
- end
34
+ def self.default_sort_field
35
+ defined?(@default_sort_field) ? @default_sort_field : nil
36
+ end
36
37
 
37
- def self.default_sort_field= value
38
- if value
39
- @default_sort_field = value.to_s
40
- else
41
- @default_sort_field = nil
42
- end
43
- end
38
+ def self.default_sort_field= value
39
+ if value
40
+ @default_sort_field = value.to_s
41
+ else
42
+ @default_sort_field = nil
43
+ end
44
+ end
44
45
 
45
- def self.allowed_fields_to_sort
46
- unless defined?(@allowed_fields_to_sort)
47
- @allowed_fields_to_sort = []
48
- end
49
- @allowed_fields_to_sort
50
- end
46
+ def self.allowed_fields_to_sort
47
+ unless defined?(@allowed_fields_to_sort)
48
+ @allowed_fields_to_sort = []
49
+ end
50
+ @allowed_fields_to_sort
51
+ end
51
52
 
52
- def self.allowed_fields_to_sort= value
53
- @allowed_fields_to_sort = []
54
- if value
55
- if value.is_a?(Array)
56
- value.each do |i|
57
- @allowed_fields_to_sort.push i.to_s
58
- end
59
- else
60
- @allowed_fields_to_sort.push value.to_s
61
- end
62
- end
63
- end
53
+ def self.allowed_fields_to_sort= value
54
+ @allowed_fields_to_sort = []
55
+ if value
56
+ if value.is_a?(Array)
57
+ value.each do |i|
58
+ @allowed_fields_to_sort.push i.to_s
59
+ end
60
+ else
61
+ @allowed_fields_to_sort.push value.to_s
62
+ end
63
+ end
64
+ end
65
+ end
64
66
  end
@@ -1,234 +1,259 @@
1
1
  # -*- encoding : utf-8 -*-
2
2
 
3
- module ChupakabraTools::ClassHelper
4
- def self.class_to_i18n(class_name)
5
- unless (class_name && class_name.is_a?(String) || class_name.class.to_s.downcase == "class")
6
- raise class_name if class_name
7
- raise "class_name is null"
8
- end
9
- class_name.to_s.underscore.gsub('/', '.')
10
- end
11
-
12
- def self.controller_class_to_i18n(controller_class)
13
- unless controller_class
14
- raise "supplied controller is null"
15
- end
16
-
17
- i18n_string = ::ChupakabraTools::ClassHelper.class_to_i18n(controller_class)
18
- i18n_string.gsub!("_controller", "") if i18n_string
19
- i18n_string
20
- end
21
-
22
- def self.controller_underscore(controller)
23
- if controller && controller.respond_to?(:controller_name)
24
- underscore_string = controller.controller_name.to_s.underscore
25
- underscore_string.gsub!("_controller", "")
26
- underscore_string
27
- end
28
- end
29
-
30
- def self.controller_full_path_underscore(controller)
31
- if controller
32
- underscore_string = controller.to_s.underscore
33
- underscore_string.gsub!("_controller", "")
34
- "/#{controller.to_s.underscore.gsub!("_controller", "")}"
35
- end
36
- end
37
-
38
- def self.has_action(klass, action)
39
- klass && action && klass.respond_to?(action)
40
- end
41
-
42
- def self.has_action?(klass, action)
43
- klass && action && klass.respond_to?(action)
44
- end
45
-
46
- def self.entry_has_db_attribute(entry, attribute)
47
- if entry && attribute
48
-
49
- end
50
- false
51
- end
52
-
53
-
54
- def self.class_is_subclass_of(parent, child)
55
- if parent.nil? || child.nil?
56
- return false
57
- end
58
- child < parent
59
- end
60
-
61
- def self.class_belongs_to_module(modul, klass)
62
- parent_module = klass.parent
63
- while (true)
64
- if parent_module == modul
65
- return true
66
- end
67
- parent_module = parent_module.parent
68
- break if parent_module == Object
69
- end
70
- false
71
- end
72
-
73
-
74
- def self.load_all_active_record_models
75
- librbfiles = File.join("#{Rails.root}/app/models/", "**", "*.rb")
76
- results = []
77
-
78
- Dir.glob(librbfiles).each do |file|
79
- begin
80
- klass_string = file.gsub("#{Rails.root}/app/models/", "")[0..-4].camelize
81
- klass = eval(klass_string)
82
- instance = klass.new
83
-
84
- results.push klass if instance.is_a?(ActiveRecord::Base)
85
- rescue => ex
86
-
87
- end
88
- end
89
- results
90
- end
91
-
92
- def self.property_required?(model, property)
93
- if model && property
94
- validators = model.class.validators_on(property)
95
- validators.each do |v|
96
- if v.is_a?(ActiveModel::Validations::PresenceValidator)
97
- return true
98
- end
99
- end
100
- end
101
- false
102
- end
103
-
104
-
105
- def self.get_controller_hierarchy(controller)
106
- classes_2_inspect = []
107
- classes_2_inspect.push(controller)
108
- sc = controller
109
- while true do
110
- break if sc.nil?
111
- sc = sc.superclass
112
- classes_2_inspect.push(sc)
113
- if sc == ActionController::Base
114
- # we reached base application controller
115
- break
116
- end
117
- end
118
- classes_2_inspect
119
- end
120
-
121
-
122
- def self.get_class_hierarchy(klass)
123
- classes_2_inspect = []
124
- classes_2_inspect.push(klass)
125
- sc = klass
126
- while true do
127
- sc = sc.superclass
128
- classes_2_inspect.push(sc)
129
- if sc == Object || sc.nil?
130
- break
131
- end
132
- end
133
- classes_2_inspect
134
- end
135
-
136
-
137
-
138
-
139
-
140
- def self.test_engine_classes
141
- results = []
142
-
143
-
144
- Dir.glob(File.join("#{Rails.root}/app/models/", "**", "*.rb")).each do |file|
145
- begin
146
- klass_string = file.gsub("#{Rails.root}/app/models/", "")[0..-4].camelize
147
- klass = eval(klass_string)
148
- instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
149
- #
150
- #results.push klass if instance.is_a?(ActiveRecord::Base)
151
- rescue Exception => e
152
- results << "**************************************************************"
153
- results << "ERROR: #{e}"
154
- results << "FILE: #{file}"
155
- results << e.to_s
156
- results << "**************************************************************"
157
- end
158
- end
159
-
160
- Dir.glob(File.join("#{Rails.root}/app/helpers/", "**", "*.rb")).each do |file|
161
- begin
162
- klass_string = file.gsub("#{Rails.root}/app/helpers/", "")[0..-4].camelize
163
- klass = eval(klass_string)
164
- instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
165
- #
166
- #results.push klass if instance.is_a?(ActiveRecord::Base)
167
- rescue Exception => e
168
- results << "**************************************************************"
169
- results << "ERROR: #{e}"
170
- results << "FILE: #{file}"
171
- results << e.to_s
172
- results << "**************************************************************"
173
- end
174
- end
175
-
176
-
177
- Dir.glob(File.join("#{Rails.root}/app/controllers/", "**", "*.rb")).each do |file|
178
- begin
179
- klass_string = file.gsub("#{Rails.root}/app/controllers/", "")[0..-4].camelize
180
- klass = eval(klass_string)
181
- instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
182
- #
183
- #results.push klass if instance.is_a?(ActiveRecord::Base)
184
- rescue Exception => e
185
- results << "**************************************************************"
186
- results << "ERROR: #{e}"
187
- results << "FILE: #{file}"
188
- results << e.to_s
189
- results << "**************************************************************"
190
- end
191
- end
192
-
193
-
194
- Rails.logger.info(results)
195
- results.join("\r\n")
196
- end
197
-
198
-
199
- def self.test_gem_classes_for_errors
200
- results = []
201
- Dir.glob(File.join("#{Rails.root}/lib/", "**", "*.rb")).each do |file|
202
- begin
203
- klass_string = file.gsub("#{Rails.root}/app/models/", "")[0..-4].camelize
204
- klass = eval(klass_string)
205
- instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
206
- #
207
- #results.push klass if instance.is_a?(ActiveRecord::Base)
208
- rescue Exception => e
209
- results << "**************************************************************"
210
- results << "ERROR: #{e}"
211
- results << "FILE: #{file}"
212
- results << e.to_s
213
- results << "**************************************************************"
214
- end
215
- end
216
- Rails.logger.info(results)
217
- results
218
- end
219
-
220
- def self.grep(data, template)
221
- grep_values = []
222
-
223
- if data.is_a?(Array)
224
- data.each do |dt|
225
- value = dt.to_s
226
- if value.index(template)
227
- grep_values.push(value)
228
- end
229
- end
230
- end
231
- grep_values
232
- end
233
-
3
+ module ChupakabraTools
4
+ module ClassHelper
5
+ def self.class_to_i18n(class_name)
6
+ unless (class_name && class_name.is_a?(String) || class_name.class.to_s.downcase == "class")
7
+ raise class_name if class_name
8
+ raise "class_name is null"
9
+ end
10
+ class_name.to_s.underscore.gsub('/', '.')
11
+ end
12
+
13
+ def self.controller_class_to_i18n(controller_class)
14
+ unless controller_class
15
+ raise "supplied controller is null"
16
+ end
17
+
18
+ i18n_string = ::ChupakabraTools::ClassHelper.class_to_i18n(controller_class)
19
+ i18n_string.gsub!("_controller", "") if i18n_string
20
+ i18n_string
21
+ end
22
+
23
+ def self.controller_underscore(controller)
24
+ if controller && controller.respond_to?(:controller_name)
25
+ underscore_string = controller.controller_name.to_s.underscore
26
+ underscore_string.gsub!("_controller", "")
27
+ underscore_string
28
+ end
29
+ end
30
+
31
+ def self.controller_full_path_underscore(controller)
32
+ if controller
33
+ underscore_string = controller.to_s.underscore
34
+ underscore_string.gsub!("_controller", "")
35
+ "/#{controller.to_s.underscore.gsub!("_controller", "")}"
36
+ end
37
+ end
38
+
39
+ def self.has_action(klass, action)
40
+ klass && action && klass.respond_to?(action)
41
+ end
42
+
43
+ def self.has_action?(klass, action)
44
+ klass && action && klass.respond_to?(action)
45
+ end
46
+
47
+ def self.entry_has_db_attribute(entry, attribute)
48
+ if entry && attribute
49
+
50
+ end
51
+ false
52
+ end
53
+
54
+
55
+ def self.class_is_subclass_of(parent, child)
56
+ if parent.nil? || child.nil?
57
+ return false
58
+ end
59
+ child < parent
60
+ end
61
+
62
+ def self.class_belongs_to_module(modul, klass)
63
+ parent_module = klass.parent
64
+ while (true)
65
+ if parent_module == modul
66
+ return true
67
+ end
68
+ parent_module = parent_module.parent
69
+ break if parent_module == Object
70
+ end
71
+ false
72
+ end
73
+
74
+
75
+ def self.load_all_active_record_models
76
+ librbfiles = File.join("#{Rails.root}/app/models/", "**", "*.rb")
77
+ results = []
78
+
79
+ Dir.glob(librbfiles).each do |file|
80
+ begin
81
+ klass_string = file.gsub("#{Rails.root}/app/models/", "")[0..-4].camelize
82
+ klass = eval(klass_string)
83
+ instance = klass.new
84
+
85
+ results.push klass if instance.is_a?(ActiveRecord::Base)
86
+ rescue => ex
87
+
88
+ end
89
+ end
90
+ results
91
+ end
92
+
93
+ def self.property_required?(model, property)
94
+ self.attribute_required?(model, property)
95
+ end
96
+ def self.attribute_required?(model, attribute)
97
+
98
+ if model && attribute
99
+ validators = model.class.validators_on(attribute)
100
+ validators.each do |v|
101
+ if v.is_a?(ActiveModel::Validations::PresenceValidator)
102
+ return true
103
+ end
104
+ end
105
+ end
106
+ false
107
+ end
108
+
109
+
110
+ def self.get_controller_hierarchy(controller)
111
+ classes_2_inspect = []
112
+ classes_2_inspect.push(controller)
113
+ sc = controller
114
+ while true do
115
+ break if sc.nil?
116
+ sc = sc.superclass
117
+ classes_2_inspect.push(sc)
118
+ if sc == ActionController::Base
119
+ # we reached base application controller
120
+ break
121
+ end
122
+ end
123
+ classes_2_inspect
124
+ end
125
+
126
+
127
+ def self.get_class_hierarchy(klass)
128
+ classes_2_inspect = []
129
+ classes_2_inspect.push(klass)
130
+ sc = klass
131
+ while true do
132
+ sc = sc.superclass
133
+ classes_2_inspect.push(sc)
134
+ if sc == Object || sc.nil?
135
+ break
136
+ end
137
+ end
138
+ classes_2_inspect
139
+ end
140
+
141
+
142
+ def self.get_method_latest_result(klass, method_name, *method_args)
143
+ self.get_class_hierarchy(klass).each do |h_klass|
144
+ if h_klass.respond_to?(method_name)
145
+ m_result = h_klass.send(method_name, *method_args)
146
+ return m_result if m_result
147
+ end
148
+ end
149
+ nil
150
+ end
151
+
152
+
153
+ def self.get_method_all_results(klass, method_name, *method_args)
154
+ method_results = []
155
+ self.get_class_hierarchy(klass).each do |h_klass|
156
+ if h_klass.respond_to?(method_name)
157
+ res = h_klass.send(method_name, *method_args)
158
+ method_results << res if res
159
+ end
160
+ end
161
+ method_results
162
+ end
163
+
164
+
165
+ def self.test_engine_classes
166
+ results = []
167
+
168
+
169
+ Dir.glob(File.join("#{Rails.root}/app/models/", "**", "*.rb")).each do |file|
170
+ begin
171
+ klass_string = file.gsub("#{Rails.root}/app/models/", "")[0..-4].camelize
172
+ klass = eval(klass_string)
173
+ instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
174
+ #
175
+ #results.push klass if instance.is_a?(ActiveRecord::Base)
176
+ rescue Exception => e
177
+ results << "**************************************************************"
178
+ results << "ERROR: #{e}"
179
+ results << "FILE: #{file}"
180
+ results << e.to_s
181
+ results << "**************************************************************"
182
+ end
183
+ end
184
+
185
+ Dir.glob(File.join("#{Rails.root}/app/helpers/", "**", "*.rb")).each do |file|
186
+ begin
187
+ klass_string = file.gsub("#{Rails.root}/app/helpers/", "")[0..-4].camelize
188
+ klass = eval(klass_string)
189
+ instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
190
+ #
191
+ #results.push klass if instance.is_a?(ActiveRecord::Base)
192
+ rescue Exception => e
193
+ results << "**************************************************************"
194
+ results << "ERROR: #{e}"
195
+ results << "FILE: #{file}"
196
+ results << e.to_s
197
+ results << "**************************************************************"
198
+ end
199
+ end
200
+
201
+
202
+ Dir.glob(File.join("#{Rails.root}/app/controllers/", "**", "*.rb")).each do |file|
203
+ begin
204
+ klass_string = file.gsub("#{Rails.root}/app/controllers/", "")[0..-4].camelize
205
+ klass = eval(klass_string)
206
+ instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
207
+ #
208
+ #results.push klass if instance.is_a?(ActiveRecord::Base)
209
+ rescue Exception => e
210
+ results << "**************************************************************"
211
+ results << "ERROR: #{e}"
212
+ results << "FILE: #{file}"
213
+ results << e.to_s
214
+ results << "**************************************************************"
215
+ end
216
+ end
217
+
218
+
219
+ Rails.logger.info(results)
220
+ results.join("\r\n")
221
+ end
222
+
223
+
224
+ def self.test_gem_classes_for_errors
225
+ results = []
226
+ Dir.glob(File.join("#{Rails.root}/lib/", "**", "*.rb")).each do |file|
227
+ begin
228
+ klass_string = file.gsub("#{Rails.root}/app/models/", "")[0..-4].camelize
229
+ klass = eval(klass_string)
230
+ instance = klass.new if klass < ActiveRecord::Base && !klass.abstract_class == true
231
+ #
232
+ #results.push klass if instance.is_a?(ActiveRecord::Base)
233
+ rescue Exception => e
234
+ results << "**************************************************************"
235
+ results << "ERROR: #{e}"
236
+ results << "FILE: #{file}"
237
+ results << e.to_s
238
+ results << "**************************************************************"
239
+ end
240
+ end
241
+ Rails.logger.info(results)
242
+ results
243
+ end
244
+
245
+ def self.grep(data, template)
246
+ grep_values = []
247
+
248
+ if data.is_a?(Array)
249
+ data.each do |dt|
250
+ value = dt.to_s
251
+ if value.index(template)
252
+ grep_values.push(value)
253
+ end
254
+ end
255
+ end
256
+ grep_values
257
+ end
258
+ end
234
259
  end