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
data/.gitignore ADDED
@@ -0,0 +1,6 @@
1
+ test/*.db
2
+ test/debug.log
3
+ coverage/
4
+ rdoc/
5
+ yardoc/
6
+ .yardoc
data/Appraisals ADDED
@@ -0,0 +1,18 @@
1
+ appraise 'rails2' do
2
+ gem 'activerecord', '~> 2.3'
3
+ end
4
+
5
+ appraise 'rails30' do
6
+ gem 'activerecord', '~> 3.0.0'
7
+ gem 'railties', '~> 3.0.0'
8
+ end
9
+
10
+ appraise 'rails31' do
11
+ gem 'activerecord', '~> 3.1.0'
12
+ gem 'railties', '~> 3.1.0'
13
+ end
14
+
15
+ appraise 'rails32' do
16
+ gem 'activerecord', '~> 3.2.0'
17
+ gem 'railties', '~> 3.2.0'
18
+ end
data/CHANGELOG ADDED
@@ -0,0 +1,10 @@
1
+ == 0.6.1
2
+
3
+ * Change gem name to 'acts-as-approvable'
4
+
5
+ == 0.6
6
+
7
+ * Convert to a gem
8
+ * Support for Rails 3.x
9
+ * Validate state parameter is an integer before using
10
+ * Correct spelling of `current_user` in controller templates
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'http://rubygems.org'
2
+
3
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,50 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ acts-as-approvable (0.6.0)
5
+
6
+ GEM
7
+ remote: http://rubygems.org/
8
+ specs:
9
+ activerecord (2.3.14)
10
+ activesupport (= 2.3.14)
11
+ activesupport (2.3.14)
12
+ appraisal (0.4.1)
13
+ bundler
14
+ rake
15
+ coderay (1.0.5)
16
+ metaclass (0.0.1)
17
+ method_source (0.7.0)
18
+ mocha (0.10.4)
19
+ metaclass (~> 0.0.1)
20
+ multi_json (1.0.4)
21
+ pry (0.9.8)
22
+ coderay (~> 1.0.5)
23
+ method_source (~> 0.7)
24
+ slop (>= 2.4.3, < 3)
25
+ rake (0.9.2.2)
26
+ redcarpet (2.1.0)
27
+ shoulda (2.11.3)
28
+ simplecov (0.5.4)
29
+ multi_json (~> 1.0.3)
30
+ simplecov-html (~> 0.5.3)
31
+ simplecov-html (0.5.3)
32
+ slop (2.4.3)
33
+ sqlite3 (1.3.5)
34
+ yard (0.7.5)
35
+
36
+ PLATFORMS
37
+ ruby
38
+
39
+ DEPENDENCIES
40
+ activerecord (~> 2.3)
41
+ acts-as-approvable!
42
+ appraisal
43
+ mocha
44
+ pry
45
+ rake
46
+ redcarpet
47
+ shoulda
48
+ simplecov
49
+ sqlite3
50
+ yard
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2012 James Logsdon
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,108 @@
1
+ Acts as Approvable
2
+ ==================
3
+
4
+ This plugin provides a workflow for approving new records and changes to existing
5
+ records.
6
+
7
+ Installation
8
+ ============
9
+
10
+ Install the plugin as you would any other Rails plugin:
11
+
12
+ $ script/plugin install git://github.com/jlogsdon/acts_as_approvable.git
13
+
14
+ After installing the plugin you should run the generator:
15
+
16
+ $ script/generate acts_as_approvable
17
+
18
+ Generator Options
19
+ =================
20
+
21
+ These options are also available by passing `--help` as an option to the generator.
22
+
23
+ --base BASE Base class for ApprovableController.
24
+ --haml Generate HAML views instead of ERB.
25
+ --owner [User] Enable and, optionally, set the model for approval ownerships.
26
+
27
+ API Documentation
28
+ =================
29
+
30
+ API Documentation is [available online](http://jlogsdon.github.com/acts_as_approvable).
31
+
32
+ Configuration
33
+ =============
34
+
35
+ The generator creates an initializor at `config/initializers/acts_as_approvable.rb`. A sample
36
+ initializer might look like this:
37
+
38
+ ActsAsApprovable.view_language = 'haml'
39
+ ActsAsApprovable::Ownership.configure
40
+
41
+ The `Ownership` functionality expects a `User` model in your project by default, but by providing
42
+ an `:owner` option you can change the expected model to whatever you wish. `.configure` also
43
+ accepts a block which it applies to the `Approval` model, allowing you to override methods as
44
+ you see fit.
45
+
46
+ For example, to only allow Users with the "admin" role to 'own' an Approval, change your initializer
47
+ to something like this:
48
+
49
+ ActsAsApprovable.view_language = 'haml'
50
+ ActsAsApprovable::Ownership.configure do
51
+ def self.available_owners
52
+ owner_class.all(:conditions => ['role', 'admin'])
53
+ end
54
+ end
55
+
56
+ Examples
57
+ ========
58
+
59
+ Require approval for new Users, but not modifications...
60
+
61
+ class User < ActiveRecord::Base
62
+ acts_as_approvable :on => :create, :state_field => :state
63
+
64
+ # Let the user know they've been approved
65
+ def after_approve(approval)
66
+ ApprovalMailer.deliver_user_approved(self.email)
67
+ end
68
+
69
+ # Let the user know they were rejected
70
+ def after_reject(approval)
71
+ ApprovalMailer.deliver_user_approved(self.email, approval.reason)
72
+ end
73
+ end
74
+
75
+ Require approval when a Game's title or description is changed, but not when view or installation count is changed...
76
+
77
+ class Game < ActiveRecord::Base
78
+ acts_as_approvable :on => :update, :ignore => [:views, :installs]
79
+ end
80
+
81
+ Require approval for all changes, except the standard ignored fields (`created_at`, `updated_at` and `:state_field`)...
82
+
83
+ class Advertisement < ActiveRecord::Base
84
+ acts_as_approvable :state_field => :state
85
+ end
86
+
87
+ Options
88
+ =======
89
+
90
+ The following options may be used to configure the workflow on a per-model
91
+ basis:
92
+
93
+ * `:on` The type of events (`:create` or `:update`) to require approval on.
94
+ * `:ignore` A list of fields to ignore for `:update` approvals.
95
+ * `:only` A list of fields that should be approved. All other fields are
96
+ ignored. If set, the `:ignore` option is... ignored.
97
+ * `:state_field` A local model field to save the `:create` approvals state. Useful
98
+ for selecting approved models without joining the approvals table.
99
+
100
+ The fields `:created_at`, `:updated_at` and whatever is set for the `:state_field`
101
+ are automatically ignored.
102
+
103
+ Contributors
104
+ ============
105
+
106
+ * [James Logsdon](http://github.com/jlogsdon) (Lead developer)
107
+ * [Hwan-Joon Choi](http://github.com/hc5duke) (Performance enhancements, bug fixes)
108
+ * [Neal Wiggins](http://github.com/nwigginsTJ) (Enumeration of states)
data/Rakefile ADDED
@@ -0,0 +1,81 @@
1
+ require 'rubygems'
2
+ require 'bundler/setup'
3
+ require 'rake/testtask'
4
+ require 'yard'
5
+ require 'appraisal'
6
+
7
+ desc 'Default: run unit tests.'
8
+ task :default => :test
9
+
10
+ desc 'Start a pry session with a database connection open'
11
+ task :pry do |t|
12
+ $LOAD_PATH << './lib'
13
+ require 'pry'
14
+ require './test/test_helper'
15
+
16
+ ActiveRecord::Base.logger = Logger.new(STDOUT)
17
+ load_schema
18
+
19
+ ActsAsApprovable::Ownership.configure
20
+ Pry.start(TOPLEVEL_BINDING)
21
+ end
22
+
23
+ desc 'Copy templates from Rails 3 generators to the Rails 2 generators'
24
+ task :copy do |t|
25
+ ['erb', 'haml'].each do |lang|
26
+ Dir["lib/generators/#{lang}/templates/*"].each do |file|
27
+ FileUtils.cp(file, "generators/acts_as_approvable/templates/views/#{lang}/#{File.basename(file)}")
28
+ end
29
+ end
30
+ Dir["lib/generators/acts_as_approvable/templates/*"].each do |file|
31
+ FileUtils.cp(file, "generators/acts_as_approvable/templates/#{File.basename(file)}")
32
+ end
33
+ end
34
+
35
+ desc 'Test the acts_as_approvable plugin.'
36
+ Rake::TestTask.new(:test) do |t|
37
+ t.libs << 'test' << 'lib'
38
+ t.pattern = 'test/*_test.rb'
39
+ t.verbose = true
40
+ end
41
+
42
+ if RUBY_VERSION =~ /^1\.8/
43
+ require 'rcov/rcovtask'
44
+ Rcov::RcovTask.new do |t|
45
+ t.libs << 'test' << 'lib'
46
+ t.rcov_opts << '--exclude' << '"Library/Ruby/*"' << '--sort' << 'coverage'
47
+ t.pattern = 'test/*_test.rb'
48
+ t.output_dir = 'coverage/'
49
+ t.verbose = true
50
+ end
51
+ elsif RUBY_VERSION =~ /^1\.9/
52
+ namespace :test do
53
+ task :coverage do
54
+ ENV['COVERAGE'] = true
55
+ Rake::Task['test'].invoke
56
+ end
57
+ end
58
+ end
59
+
60
+ desc 'Generate documentation for the acts_as_approvable plugin.'
61
+ YARD::Rake::YardocTask.new do |t|
62
+ yard_dir = (ENV['YARD_DIR'] || 'yardoc')
63
+ t.files = ['lib/**/*.rb', 'README.md']
64
+ t.options = ['-r', 'README.md', '-o', yard_dir, '--markup', 'markdown']
65
+ end
66
+
67
+ desc 'Generate documentation and update the gh-pages branch'
68
+ task :site => :yard do |t|
69
+ def run_or_quit(cmd)
70
+ puts "Running #{cmd}"
71
+ `#{cmd}`
72
+ raise "Command failed!" if $? != 0
73
+ end
74
+
75
+ run_or_quit('git checkout gh-pages')
76
+ run_or_quit('rsync -rv --delete --exclude yardoc/ --exclude .git/ --exclude .gitignore yardoc/ ./')
77
+ run_or_quit('git add .')
78
+ run_or_quit('git commit -m "Updating documentation"')
79
+ run_or_quit('git push origin gh-pages')
80
+ run_or_quit('git checkout master')
81
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.6.1
@@ -0,0 +1,31 @@
1
+ $:.push File.expand_path('../lib', __FILE__)
2
+ require "acts-as-approvable/version"
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = %q(acts-as-approvable)
6
+ s.version = ActsAsApprovable::VERSION
7
+
8
+ s.summary = %q(Generic approval queues for record creation and updates)
9
+ s.description = %q(Generic approval queues for record creation and updates)
10
+
11
+ s.authors = ['James Logsdon', 'Hwan-Joon Choi', 'Neal Wiggins']
12
+ s.email = %q(dwarf@girsbrain.org)
13
+ s.homepage = %q(http://github.com/jlogsdon/acts_as_approvable)
14
+ s.date = %q(2012-02-14)
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_development_dependency %q<activerecord>, '~> 2.3'
21
+ s.add_development_dependency %q<appraisal>
22
+ s.add_development_dependency %q<redcarpet>
23
+ s.add_development_dependency %q<shoulda>
24
+ s.add_development_dependency %q<sqlite3>
25
+ s.add_development_dependency %q<mocha>
26
+ s.add_development_dependency %q<rake>
27
+ s.add_development_dependency %q<rcov> if RUBY_VERSION =~ /^1\.8/
28
+ s.add_development_dependency %q<simplecov> if RUBY_VERSION =~ /^1\.9/
29
+ s.add_development_dependency %q<yard>
30
+ s.add_development_dependency %q<pry>
31
+ end
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "activerecord", "~> 2.3"
6
+
7
+ gemspec :path=>"../"
@@ -0,0 +1,50 @@
1
+ PATH
2
+ remote: /Users/jlogsdon/Code/acts_as_approvable/acts_as_approvable
3
+ specs:
4
+ acts-as-approvable (0.6.0)
5
+
6
+ GEM
7
+ remote: http://rubygems.org/
8
+ specs:
9
+ activerecord (2.3.14)
10
+ activesupport (= 2.3.14)
11
+ activesupport (2.3.14)
12
+ appraisal (0.4.1)
13
+ bundler
14
+ rake
15
+ coderay (1.0.5)
16
+ metaclass (0.0.1)
17
+ method_source (0.7.0)
18
+ mocha (0.10.4)
19
+ metaclass (~> 0.0.1)
20
+ multi_json (1.0.4)
21
+ pry (0.9.8)
22
+ coderay (~> 1.0.5)
23
+ method_source (~> 0.7)
24
+ slop (>= 2.4.3, < 3)
25
+ rake (0.9.2.2)
26
+ redcarpet (2.1.0)
27
+ shoulda (2.11.3)
28
+ simplecov (0.5.4)
29
+ multi_json (~> 1.0.3)
30
+ simplecov-html (~> 0.5.3)
31
+ simplecov-html (0.5.3)
32
+ slop (2.4.3)
33
+ sqlite3 (1.3.5)
34
+ yard (0.7.5)
35
+
36
+ PLATFORMS
37
+ ruby
38
+
39
+ DEPENDENCIES
40
+ activerecord (~> 2.3)
41
+ acts-as-approvable!
42
+ appraisal
43
+ mocha
44
+ pry
45
+ rake
46
+ redcarpet
47
+ shoulda
48
+ simplecov
49
+ sqlite3
50
+ yard
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "activerecord", "~> 3.0.0"
6
+ gem "railties", "~> 3.0.0"
7
+
8
+ gemspec :path=>"../"
@@ -0,0 +1,90 @@
1
+ PATH
2
+ remote: /Users/jlogsdon/Code/acts_as_approvable/acts_as_approvable
3
+ specs:
4
+ acts-as-approvable (0.6.0)
5
+
6
+ GEM
7
+ remote: http://rubygems.org/
8
+ specs:
9
+ abstract (1.0.0)
10
+ actionpack (3.0.11)
11
+ activemodel (= 3.0.11)
12
+ activesupport (= 3.0.11)
13
+ builder (~> 2.1.2)
14
+ erubis (~> 2.6.6)
15
+ i18n (~> 0.5.0)
16
+ rack (~> 1.2.1)
17
+ rack-mount (~> 0.6.14)
18
+ rack-test (~> 0.5.7)
19
+ tzinfo (~> 0.3.23)
20
+ activemodel (3.0.11)
21
+ activesupport (= 3.0.11)
22
+ builder (~> 2.1.2)
23
+ i18n (~> 0.5.0)
24
+ activerecord (3.0.11)
25
+ activemodel (= 3.0.11)
26
+ activesupport (= 3.0.11)
27
+ arel (~> 2.0.10)
28
+ tzinfo (~> 0.3.23)
29
+ activesupport (3.0.11)
30
+ appraisal (0.4.1)
31
+ bundler
32
+ rake
33
+ arel (2.0.10)
34
+ builder (2.1.2)
35
+ coderay (1.0.5)
36
+ erubis (2.6.6)
37
+ abstract (>= 1.0.0)
38
+ i18n (0.5.0)
39
+ json (1.6.5)
40
+ metaclass (0.0.1)
41
+ method_source (0.7.0)
42
+ mocha (0.10.4)
43
+ metaclass (~> 0.0.1)
44
+ multi_json (1.0.4)
45
+ pry (0.9.8)
46
+ coderay (~> 1.0.5)
47
+ method_source (~> 0.7)
48
+ slop (>= 2.4.3, < 3)
49
+ rack (1.2.5)
50
+ rack-mount (0.6.14)
51
+ rack (>= 1.0.0)
52
+ rack-test (0.5.7)
53
+ rack (>= 1.0)
54
+ railties (3.0.11)
55
+ actionpack (= 3.0.11)
56
+ activesupport (= 3.0.11)
57
+ rake (>= 0.8.7)
58
+ rdoc (~> 3.4)
59
+ thor (~> 0.14.4)
60
+ rake (0.9.2.2)
61
+ rdoc (3.12)
62
+ json (~> 1.4)
63
+ redcarpet (2.1.0)
64
+ shoulda (2.11.3)
65
+ simplecov (0.5.4)
66
+ multi_json (~> 1.0.3)
67
+ simplecov-html (~> 0.5.3)
68
+ simplecov-html (0.5.3)
69
+ slop (2.4.3)
70
+ sqlite3 (1.3.5)
71
+ thor (0.14.6)
72
+ tzinfo (0.3.31)
73
+ yard (0.7.5)
74
+
75
+ PLATFORMS
76
+ ruby
77
+
78
+ DEPENDENCIES
79
+ activerecord (~> 3.0.0)
80
+ acts-as-approvable!
81
+ appraisal
82
+ mocha
83
+ pry
84
+ railties (~> 3.0.0)
85
+ rake
86
+ redcarpet
87
+ shoulda
88
+ simplecov
89
+ sqlite3
90
+ yard
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "activerecord", "~> 3.1.0"
6
+ gem "railties", "~> 3.1.0"
7
+
8
+ gemspec :path=>"../"
@@ -0,0 +1,101 @@
1
+ PATH
2
+ remote: /Users/jlogsdon/Code/acts_as_approvable/acts_as_approvable
3
+ specs:
4
+ acts-as-approvable (0.6.0)
5
+
6
+ GEM
7
+ remote: http://rubygems.org/
8
+ specs:
9
+ actionpack (3.1.3)
10
+ activemodel (= 3.1.3)
11
+ activesupport (= 3.1.3)
12
+ builder (~> 3.0.0)
13
+ erubis (~> 2.7.0)
14
+ i18n (~> 0.6)
15
+ rack (~> 1.3.5)
16
+ rack-cache (~> 1.1)
17
+ rack-mount (~> 0.8.2)
18
+ rack-test (~> 0.6.1)
19
+ sprockets (~> 2.0.3)
20
+ activemodel (3.1.3)
21
+ activesupport (= 3.1.3)
22
+ builder (~> 3.0.0)
23
+ i18n (~> 0.6)
24
+ activerecord (3.1.3)
25
+ activemodel (= 3.1.3)
26
+ activesupport (= 3.1.3)
27
+ arel (~> 2.2.1)
28
+ tzinfo (~> 0.3.29)
29
+ activesupport (3.1.3)
30
+ multi_json (~> 1.0)
31
+ appraisal (0.4.1)
32
+ bundler
33
+ rake
34
+ arel (2.2.1)
35
+ builder (3.0.0)
36
+ coderay (1.0.5)
37
+ erubis (2.7.0)
38
+ hike (1.2.1)
39
+ i18n (0.6.0)
40
+ json (1.6.5)
41
+ metaclass (0.0.1)
42
+ method_source (0.7.0)
43
+ mocha (0.10.4)
44
+ metaclass (~> 0.0.1)
45
+ multi_json (1.0.4)
46
+ pry (0.9.8)
47
+ coderay (~> 1.0.5)
48
+ method_source (~> 0.7)
49
+ slop (>= 2.4.3, < 3)
50
+ rack (1.3.6)
51
+ rack-cache (1.1)
52
+ rack (>= 0.4)
53
+ rack-mount (0.8.3)
54
+ rack (>= 1.0.0)
55
+ rack-ssl (1.3.2)
56
+ rack
57
+ rack-test (0.6.1)
58
+ rack (>= 1.0)
59
+ railties (3.1.3)
60
+ actionpack (= 3.1.3)
61
+ activesupport (= 3.1.3)
62
+ rack-ssl (~> 1.3.2)
63
+ rake (>= 0.8.7)
64
+ rdoc (~> 3.4)
65
+ thor (~> 0.14.6)
66
+ rake (0.9.2.2)
67
+ rdoc (3.12)
68
+ json (~> 1.4)
69
+ redcarpet (2.1.0)
70
+ shoulda (2.11.3)
71
+ simplecov (0.5.4)
72
+ multi_json (~> 1.0.3)
73
+ simplecov-html (~> 0.5.3)
74
+ simplecov-html (0.5.3)
75
+ slop (2.4.3)
76
+ sprockets (2.0.3)
77
+ hike (~> 1.2)
78
+ rack (~> 1.0)
79
+ tilt (~> 1.1, != 1.3.0)
80
+ sqlite3 (1.3.5)
81
+ thor (0.14.6)
82
+ tilt (1.3.3)
83
+ tzinfo (0.3.31)
84
+ yard (0.7.5)
85
+
86
+ PLATFORMS
87
+ ruby
88
+
89
+ DEPENDENCIES
90
+ activerecord (~> 3.1.0)
91
+ acts-as-approvable!
92
+ appraisal
93
+ mocha
94
+ pry
95
+ railties (~> 3.1.0)
96
+ rake
97
+ redcarpet
98
+ shoulda
99
+ simplecov
100
+ sqlite3
101
+ yard
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "activerecord", "~> 3.2.0"
6
+ gem "railties", "~> 3.2.0"
7
+
8
+ gemspec :path=>"../"