acts-as-approvable 0.6.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.
Files changed (61) hide show
  1. data/.gitignore +6 -0
  2. data/Appraisals +18 -0
  3. data/CHANGELOG +10 -0
  4. data/Gemfile +3 -0
  5. data/Gemfile.lock +50 -0
  6. data/MIT-LICENSE +20 -0
  7. data/README.md +108 -0
  8. data/Rakefile +81 -0
  9. data/VERSION +1 -0
  10. data/acts-as-approvable.gemspec +31 -0
  11. data/gemfiles/rails2.gemfile +7 -0
  12. data/gemfiles/rails2.gemfile.lock +50 -0
  13. data/gemfiles/rails30.gemfile +8 -0
  14. data/gemfiles/rails30.gemfile.lock +90 -0
  15. data/gemfiles/rails31.gemfile +8 -0
  16. data/gemfiles/rails31.gemfile.lock +101 -0
  17. data/gemfiles/rails32.gemfile +8 -0
  18. data/gemfiles/rails32.gemfile.lock +99 -0
  19. data/generators/acts_as_approvable/USAGE +3 -0
  20. data/generators/acts_as_approvable/acts_as_approvable_generator.rb +86 -0
  21. data/generators/acts_as_approvable/templates/approvals_controller.rb +97 -0
  22. data/generators/acts_as_approvable/templates/create_approvals.rb +26 -0
  23. data/generators/acts_as_approvable/templates/initializer.rb +3 -0
  24. data/generators/acts_as_approvable/templates/views/erb/_owner_select.html.erb +4 -0
  25. data/generators/acts_as_approvable/templates/views/erb/_table.html.erb +26 -0
  26. data/generators/acts_as_approvable/templates/views/erb/index.html.erb +15 -0
  27. data/generators/acts_as_approvable/templates/views/haml/_owner_select.html.haml +3 -0
  28. data/generators/acts_as_approvable/templates/views/haml/_table.html.haml +19 -0
  29. data/generators/acts_as_approvable/templates/views/haml/index.html.haml +13 -0
  30. data/init.rb +1 -0
  31. data/lib/acts-as-approvable/version.rb +3 -0
  32. data/lib/acts_as_approvable/acts_as_approvable.rb +291 -0
  33. data/lib/acts_as_approvable/approval.rb +179 -0
  34. data/lib/acts_as_approvable/error.rb +31 -0
  35. data/lib/acts_as_approvable/ownership.rb +117 -0
  36. data/lib/acts_as_approvable/railtie.rb +7 -0
  37. data/lib/acts_as_approvable.rb +66 -0
  38. data/lib/generators/acts_as_approvable/USAGE +1 -0
  39. data/lib/generators/acts_as_approvable/acts_as_approvable_generator.rb +73 -0
  40. data/lib/generators/acts_as_approvable/templates/approvals_controller.rb +97 -0
  41. data/lib/generators/acts_as_approvable/templates/create_approvals.rb +26 -0
  42. data/lib/generators/acts_as_approvable.rb +0 -0
  43. data/lib/generators/erb/acts_as_approvable_generator.rb +44 -0
  44. data/lib/generators/erb/templates/_owner_select.html.erb +4 -0
  45. data/lib/generators/erb/templates/_table.html.erb +26 -0
  46. data/lib/generators/erb/templates/index.html.erb +15 -0
  47. data/lib/generators/haml/acts_as_approvable_generator.rb +44 -0
  48. data/lib/generators/haml/templates/_owner_select.html.haml +3 -0
  49. data/lib/generators/haml/templates/_table.html.haml +19 -0
  50. data/lib/generators/haml/templates/index.html.haml +13 -0
  51. data/lib/tasks/acts_as_approvable.rake +4 -0
  52. data/rails/init.rb +1 -0
  53. data/test/acts_as_approvable_model_test.rb +428 -0
  54. data/test/acts_as_approvable_ownership_test.rb +132 -0
  55. data/test/acts_as_approvable_schema_test.rb +13 -0
  56. data/test/acts_as_approvable_test.rb +8 -0
  57. data/test/database.yml +7 -0
  58. data/test/schema.rb +44 -0
  59. data/test/support.rb +19 -0
  60. data/test/test_helper.rb +60 -0
  61. metadata +225 -0
@@ -0,0 +1,60 @@
1
+ if RUBY_VERSION =~ /^1\.9/
2
+ require 'simplecov'
3
+ SimpleCov.start if ENV['COVERAGE']
4
+ end
5
+
6
+ ENV['RAILS_ENV'] = 'test'
7
+ ENV['RAILS_ROOT'] ||= File.expand_path(File.join(File.dirname(__FILE__), '..', '..', '..', '..'))
8
+
9
+ require 'rubygems'
10
+ require 'test/unit'
11
+ require 'mocha'
12
+ require 'shoulda'
13
+ require 'active_record'
14
+
15
+ require File.dirname(__FILE__) + '/../lib/acts_as_approvable'
16
+ require './test/support'
17
+
18
+ logfile = File.dirname(__FILE__) + '/debug.log'
19
+ LOGGER = ActiveRecord::Base.logger = if defined?(ActiveSupport::BufferedLogger)
20
+ ActiveSupport::BufferedLogger.new(logfile)
21
+ else
22
+ Logger.new(logfile)
23
+ end
24
+
25
+ def load_schema
26
+ config = YAML::load(IO.read(File.dirname(__FILE__) + '/database.yml'))
27
+
28
+ db_adapter = ENV['DB']
29
+
30
+ db_adapter ||=
31
+ begin
32
+ require 'sqlite'
33
+ 'sqlite'
34
+ rescue MissingSourceFile
35
+ begin
36
+ require 'sqlite3'
37
+ 'sqlite3'
38
+ rescue MissingSourceFile
39
+ end
40
+ end
41
+
42
+ if db_adapter.nil?
43
+ raise 'No DB Adapter selected. Pass the DB= option to pick one, or install Sqlite or Sqlite3.'
44
+ end
45
+
46
+ ActiveRecord::Base.establish_connection(config[db_adapter])
47
+ ActiveRecord::Migration.suppress_messages do
48
+ load(File.dirname(__FILE__) + '/schema.rb')
49
+ end
50
+
51
+ ar_classes.each { |klass| klass.reset_column_information }
52
+ end
53
+
54
+ def ar_classes
55
+ ActiveRecord::Base.send(ActiveRecord::Base.respond_to?(:descendants) ? :descendants : :subclasses)
56
+ end
57
+
58
+ def truncate
59
+ ar_classes.each { |klass| klass.delete_all }
60
+ end
metadata ADDED
@@ -0,0 +1,225 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: acts-as-approvable
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - James Logsdon
9
+ - Hwan-Joon Choi
10
+ - Neal Wiggins
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+ date: 2012-02-14 00:00:00.000000000Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: activerecord
18
+ requirement: &70177985435440 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ~>
22
+ - !ruby/object:Gem::Version
23
+ version: '2.3'
24
+ type: :development
25
+ prerelease: false
26
+ version_requirements: *70177985435440
27
+ - !ruby/object:Gem::Dependency
28
+ name: appraisal
29
+ requirement: &70177985435020 !ruby/object:Gem::Requirement
30
+ none: false
31
+ requirements:
32
+ - - ! '>='
33
+ - !ruby/object:Gem::Version
34
+ version: '0'
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: *70177985435020
38
+ - !ruby/object:Gem::Dependency
39
+ name: redcarpet
40
+ requirement: &70177985434500 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ type: :development
47
+ prerelease: false
48
+ version_requirements: *70177985434500
49
+ - !ruby/object:Gem::Dependency
50
+ name: shoulda
51
+ requirement: &70177985434080 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ! '>='
55
+ - !ruby/object:Gem::Version
56
+ version: '0'
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: *70177985434080
60
+ - !ruby/object:Gem::Dependency
61
+ name: sqlite3
62
+ requirement: &70177985433560 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ! '>='
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: *70177985433560
71
+ - !ruby/object:Gem::Dependency
72
+ name: mocha
73
+ requirement: &70177985433060 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: '0'
79
+ type: :development
80
+ prerelease: false
81
+ version_requirements: *70177985433060
82
+ - !ruby/object:Gem::Dependency
83
+ name: rake
84
+ requirement: &70177985432380 !ruby/object:Gem::Requirement
85
+ none: false
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: *70177985432380
93
+ - !ruby/object:Gem::Dependency
94
+ name: simplecov
95
+ requirement: &70177985431480 !ruby/object:Gem::Requirement
96
+ none: false
97
+ requirements:
98
+ - - ! '>='
99
+ - !ruby/object:Gem::Version
100
+ version: '0'
101
+ type: :development
102
+ prerelease: false
103
+ version_requirements: *70177985431480
104
+ - !ruby/object:Gem::Dependency
105
+ name: yard
106
+ requirement: &70177985431060 !ruby/object:Gem::Requirement
107
+ none: false
108
+ requirements:
109
+ - - ! '>='
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
112
+ type: :development
113
+ prerelease: false
114
+ version_requirements: *70177985431060
115
+ - !ruby/object:Gem::Dependency
116
+ name: pry
117
+ requirement: &70177985424480 !ruby/object:Gem::Requirement
118
+ none: false
119
+ requirements:
120
+ - - ! '>='
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
123
+ type: :development
124
+ prerelease: false
125
+ version_requirements: *70177985424480
126
+ description: Generic approval queues for record creation and updates
127
+ email: dwarf@girsbrain.org
128
+ executables: []
129
+ extensions: []
130
+ extra_rdoc_files: []
131
+ files:
132
+ - .gitignore
133
+ - Appraisals
134
+ - CHANGELOG
135
+ - Gemfile
136
+ - Gemfile.lock
137
+ - MIT-LICENSE
138
+ - README.md
139
+ - Rakefile
140
+ - VERSION
141
+ - acts-as-approvable.gemspec
142
+ - gemfiles/rails2.gemfile
143
+ - gemfiles/rails2.gemfile.lock
144
+ - gemfiles/rails30.gemfile
145
+ - gemfiles/rails30.gemfile.lock
146
+ - gemfiles/rails31.gemfile
147
+ - gemfiles/rails31.gemfile.lock
148
+ - gemfiles/rails32.gemfile
149
+ - gemfiles/rails32.gemfile.lock
150
+ - generators/acts_as_approvable/USAGE
151
+ - generators/acts_as_approvable/acts_as_approvable_generator.rb
152
+ - generators/acts_as_approvable/templates/approvals_controller.rb
153
+ - generators/acts_as_approvable/templates/create_approvals.rb
154
+ - generators/acts_as_approvable/templates/initializer.rb
155
+ - generators/acts_as_approvable/templates/views/erb/_owner_select.html.erb
156
+ - generators/acts_as_approvable/templates/views/erb/_table.html.erb
157
+ - generators/acts_as_approvable/templates/views/erb/index.html.erb
158
+ - generators/acts_as_approvable/templates/views/haml/_owner_select.html.haml
159
+ - generators/acts_as_approvable/templates/views/haml/_table.html.haml
160
+ - generators/acts_as_approvable/templates/views/haml/index.html.haml
161
+ - init.rb
162
+ - lib/acts-as-approvable/version.rb
163
+ - lib/acts_as_approvable.rb
164
+ - lib/acts_as_approvable/acts_as_approvable.rb
165
+ - lib/acts_as_approvable/approval.rb
166
+ - lib/acts_as_approvable/error.rb
167
+ - lib/acts_as_approvable/ownership.rb
168
+ - lib/acts_as_approvable/railtie.rb
169
+ - lib/generators/acts_as_approvable.rb
170
+ - lib/generators/acts_as_approvable/USAGE
171
+ - lib/generators/acts_as_approvable/acts_as_approvable_generator.rb
172
+ - lib/generators/acts_as_approvable/templates/approvals_controller.rb
173
+ - lib/generators/acts_as_approvable/templates/create_approvals.rb
174
+ - lib/generators/erb/acts_as_approvable_generator.rb
175
+ - lib/generators/erb/templates/_owner_select.html.erb
176
+ - lib/generators/erb/templates/_table.html.erb
177
+ - lib/generators/erb/templates/index.html.erb
178
+ - lib/generators/haml/acts_as_approvable_generator.rb
179
+ - lib/generators/haml/templates/_owner_select.html.haml
180
+ - lib/generators/haml/templates/_table.html.haml
181
+ - lib/generators/haml/templates/index.html.haml
182
+ - lib/tasks/acts_as_approvable.rake
183
+ - rails/init.rb
184
+ - test/acts_as_approvable_model_test.rb
185
+ - test/acts_as_approvable_ownership_test.rb
186
+ - test/acts_as_approvable_schema_test.rb
187
+ - test/acts_as_approvable_test.rb
188
+ - test/database.yml
189
+ - test/schema.rb
190
+ - test/support.rb
191
+ - test/test_helper.rb
192
+ homepage: http://github.com/jlogsdon/acts_as_approvable
193
+ licenses: []
194
+ post_install_message:
195
+ rdoc_options: []
196
+ require_paths:
197
+ - lib
198
+ required_ruby_version: !ruby/object:Gem::Requirement
199
+ none: false
200
+ requirements:
201
+ - - ! '>='
202
+ - !ruby/object:Gem::Version
203
+ version: '0'
204
+ required_rubygems_version: !ruby/object:Gem::Requirement
205
+ none: false
206
+ requirements:
207
+ - - ! '>='
208
+ - !ruby/object:Gem::Version
209
+ version: '0'
210
+ requirements: []
211
+ rubyforge_project:
212
+ rubygems_version: 1.8.10
213
+ signing_key:
214
+ specification_version: 3
215
+ summary: Generic approval queues for record creation and updates
216
+ test_files:
217
+ - test/acts_as_approvable_model_test.rb
218
+ - test/acts_as_approvable_ownership_test.rb
219
+ - test/acts_as_approvable_schema_test.rb
220
+ - test/acts_as_approvable_test.rb
221
+ - test/database.yml
222
+ - test/schema.rb
223
+ - test/support.rb
224
+ - test/test_helper.rb
225
+ has_rdoc: