acts-as-approvable 0.6.7 → 0.6.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. data/.gitignore +2 -5
  2. data/.rspec +2 -0
  3. data/.travis.yml +5 -0
  4. data/Appraisals +14 -10
  5. data/CHANGELOG +16 -0
  6. data/Gemfile.lock +60 -20
  7. data/README.md +1 -2
  8. data/Rakefile +44 -16
  9. data/VERSION +1 -1
  10. data/acts-as-approvable.gemspec +21 -11
  11. data/features/create_approval.feature +26 -0
  12. data/features/step_definitions/cucumber_steps.rb +86 -0
  13. data/features/support/env.rb +14 -0
  14. data/features/support/large.txt +29943 -0
  15. data/features/support/second_large.txt +31798 -0
  16. data/features/update_approval.feature +34 -0
  17. data/gemfiles/Gemfile.ci +14 -0
  18. data/gemfiles/Gemfile.ci.lock +98 -0
  19. data/gemfiles/mysql2.gemfile +7 -0
  20. data/gemfiles/mysql2.gemfile.lock +92 -0
  21. data/gemfiles/rails2.gemfile +1 -0
  22. data/gemfiles/rails2.gemfile.lock +59 -17
  23. data/gemfiles/rails30.gemfile +1 -0
  24. data/gemfiles/rails30.gemfile.lock +54 -14
  25. data/gemfiles/rails31.gemfile +1 -0
  26. data/gemfiles/rails31.gemfile.lock +54 -14
  27. data/gemfiles/sqlite.gemfile +7 -0
  28. data/generators/acts_as_approvable/templates/create_approvals.rb +8 -7
  29. data/lib/acts-as-approvable.rb +2 -3
  30. data/lib/acts_as_approvable/approval.rb +3 -2
  31. data/lib/acts_as_approvable/model.rb +55 -0
  32. data/lib/acts_as_approvable/model/class_methods.rb +63 -0
  33. data/lib/acts_as_approvable/model/create_instance_methods.rb +83 -0
  34. data/lib/acts_as_approvable/model/instance_methods.rb +89 -0
  35. data/lib/acts_as_approvable/model/update_instance_methods.rb +61 -0
  36. data/lib/acts_as_approvable/railtie.rb +1 -1
  37. data/lib/generators/acts_as_approvable/templates/create_approvals.rb +8 -7
  38. data/spec/acts_as_approvable/approval_spec.rb +475 -0
  39. data/spec/acts_as_approvable/model/class_methods_spec.rb +219 -0
  40. data/spec/acts_as_approvable/model/create_instance_methods_spec.rb +149 -0
  41. data/spec/acts_as_approvable/model/instance_methods_spec.rb +328 -0
  42. data/spec/acts_as_approvable/model/update_instance_methods_spec.rb +111 -0
  43. data/spec/acts_as_approvable/model_spec.rb +90 -0
  44. data/spec/acts_as_approvable/ownership/class_methods_spec.rb +101 -0
  45. data/spec/acts_as_approvable/ownership/instance_methods_spec.rb +32 -0
  46. data/spec/acts_as_approvable/ownership_spec.rb +51 -0
  47. data/spec/acts_as_approvable_spec.rb +29 -0
  48. data/spec/spec_helper.rb +51 -0
  49. data/spec/support/database.rb +46 -0
  50. data/spec/support/database.yml +12 -0
  51. data/spec/support/matchers.rb +87 -0
  52. data/spec/support/models.rb +60 -0
  53. data/{test → spec/support}/schema.rb +15 -9
  54. metadata +156 -53
  55. data/gemfiles/rails32.gemfile +0 -8
  56. data/gemfiles/rails32.gemfile.lock +0 -99
  57. data/lib/acts_as_approvable/acts_as_approvable.rb +0 -291
  58. data/test/acts_as_approvable_model_test.rb +0 -459
  59. data/test/acts_as_approvable_ownership_test.rb +0 -132
  60. data/test/acts_as_approvable_schema_test.rb +0 -13
  61. data/test/acts_as_approvable_test.rb +0 -8
  62. data/test/database.yml +0 -7
  63. data/test/support.rb +0 -19
  64. data/test/test_helper.rb +0 -62
@@ -0,0 +1,46 @@
1
+ module Support
2
+ module Database
3
+ def self.setup_log(logfile = nil)
4
+ logfile ||= File.expand_path('../../debug.log', File.dirname(__FILE__))
5
+ ActiveRecord::Base.logger = if defined?(ActiveSupport::BufferedLogger)
6
+ ActiveSupport::BufferedLogger.new(logfile)
7
+ else
8
+ Logger.new(logfile)
9
+ end
10
+ end
11
+
12
+ def self.load_schema
13
+ config = YAML::load(IO.read(File.expand_path('database.yml', File.dirname(__FILE__))))
14
+
15
+ unless db_adapter = ENV['DB']
16
+ %w(sqlite3 mysql2 sqlite).each do |gem|
17
+ begin
18
+ require gem
19
+ db_adapter = gem
20
+ break
21
+ rescue MissingSourceFile
22
+ end
23
+ end
24
+ end
25
+
26
+ if db_adapter.nil?
27
+ raise 'No DB Adapter selected. Pass the DB= option to pick one, or install Sqlite or Sqlite3.'
28
+ end
29
+
30
+ ActiveRecord::Base.establish_connection(config[db_adapter])
31
+ ActiveRecord::Migration.suppress_messages do
32
+ load(File.expand_path('schema.rb', File.dirname(__FILE__)))
33
+ end
34
+
35
+ [User, Approval, NotApprovable, DefaultApprovable, CreatesApprovable, CreatesWithStateApprovable, UpdatesApprovable, UpdatesIgnoreFieldsApprovable, UpdatesOnlyFieldsApprovable].each do |klass|
36
+ klass.reset_column_information
37
+ end
38
+ end
39
+
40
+ def self.truncate
41
+ [User, Approval, NotApprovable, DefaultApprovable, CreatesApprovable, UpdatesApprovable].each do |klass|
42
+ klass.delete_all
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,12 @@
1
+ sqlite:
2
+ :adapter: sqlite
3
+ :database: spec/acts_as_approvable_plugin.sqlite.db
4
+
5
+ sqlite3:
6
+ :adapter: sqlite3
7
+ :database: spec/acts_as_approvable_plugin.sqlite3.db
8
+
9
+ mysql2:
10
+ :adapter: mysql2
11
+ :database: acts_as_approvable_test
12
+ :user: root
@@ -0,0 +1,87 @@
1
+ require 'rspec/expectations'
2
+ require 'shoulda/active_record/matchers'
3
+
4
+ class Module
5
+ # Return any modules we +extend+
6
+ def extended_modules
7
+ (class << self; self end).included_modules
8
+ end
9
+ end
10
+
11
+ # Truthfully this checks both extend *and* include. :include is already used as a matcher for Arrays :-/
12
+ RSpec::Matchers.define :extend do |expected|
13
+ match do |actual|
14
+ extended = (actual.extended_modules - Module.extended_modules) + actual.included_modules
15
+ extended.include?(expected)
16
+ end
17
+ description do
18
+ "extend #{expected}"
19
+ end
20
+ failure_message_for_should do |actual|
21
+ "expected #{actual} to extend #{expected}"
22
+ end
23
+ failure_message_for_should_not do |actual|
24
+ "expected #{actual} not to extend #{expected}"
25
+ end
26
+ end
27
+
28
+ RSpec::Matchers.define :be_an_options_array do
29
+ match do |actual|
30
+ actual.should be_an(Array)
31
+ actual.each do |option|
32
+ unless option.is_a?(String)
33
+ option.should be_an(Array)
34
+ option.length.should be(2)
35
+ end
36
+ end
37
+ end
38
+ description do
39
+ 'returns an array usable by #options_for_select'
40
+ end
41
+ failure_message_for_should do |actual|
42
+ "expected #{actual} to map to a valid #options_for_select array"
43
+ end
44
+ failure_message_for_should_not do |actual|
45
+ "expected #{actual} not to map to a valid #options_for_select array"
46
+ end
47
+ end
48
+
49
+ module Shoulda
50
+ module ActiveRecord
51
+ module Matchers
52
+ def validate_inclusion_of(attr)
53
+ ValidatesInclusionOfMatcher.new(attr)
54
+ end
55
+
56
+ class ValidatesInclusionOfMatcher < ValidationMatcher
57
+ def in(values)
58
+ @values = values
59
+ self
60
+ end
61
+
62
+ def description
63
+ "require #{@attribute} to be one of #{@values.inspect}"
64
+ end
65
+
66
+ def matches?(subject)
67
+ super(subject)
68
+
69
+ allows_given_values && disallows_other_values
70
+ end
71
+
72
+ private
73
+ def allows_given_values
74
+ @values.each do |value|
75
+ allows_value_of(value, @message)
76
+ end unless @values.empty?
77
+ end
78
+
79
+ def disallows_other_values
80
+ @values.each do |value|
81
+ disallows_value_of("#{value}s", @message)
82
+ end unless @values.empty?
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,60 @@
1
+ class User < ActiveRecord::Base
2
+ def self.table_name; 'users'; end
3
+ def self.primary_key; 'id'; end
4
+
5
+ def to_str; id; end
6
+ end
7
+
8
+ class NotApprovable < ActiveRecord::Base
9
+ def self.table_name; 'nots'; end
10
+ def self.primary_key; 'id'; end
11
+ end
12
+
13
+ class DefaultApprovable < ActiveRecord::Base
14
+ def self.table_name; 'defaults'; end
15
+ def self.primary_key; 'id'; end
16
+
17
+ acts_as_approvable
18
+ end
19
+
20
+ class CreatesApprovable < ActiveRecord::Base
21
+ def self.table_name; 'creates'; end
22
+ def self.primary_key; 'id'; end
23
+
24
+ acts_as_approvable :on => :create
25
+ end
26
+
27
+ class CreatesWithStateApprovable < ActiveRecord::Base
28
+ def self.table_name; 'creates'; end
29
+ def self.primary_key; 'id'; end
30
+
31
+ acts_as_approvable :on => :create, :state_field => :state
32
+ end
33
+
34
+ class UpdatesApprovable < ActiveRecord::Base
35
+ def self.table_name; 'updates'; end
36
+ def self.primary_key; 'id'; end
37
+
38
+ acts_as_approvable :on => :update
39
+ end
40
+
41
+ class UpdatesOnlyFieldsApprovable < ActiveRecord::Base
42
+ def self.table_name; 'updates'; end
43
+ def self.primary_key; 'id'; end
44
+
45
+ acts_as_approvable :on => :update, :only => [:body]
46
+ end
47
+
48
+ class UpdatesIgnoreFieldsApprovable < ActiveRecord::Base
49
+ def self.table_name; 'updates'; end
50
+ def self.primary_key; 'id'; end
51
+
52
+ acts_as_approvable :on => :update, :ignore => [:title]
53
+ end
54
+
55
+ class OwnedApproval < ActiveRecord::Base
56
+ def self.table_name; 'approvals'; end
57
+ def self.primary_key; 'id'; end
58
+
59
+ include ActsAsApprovable::Ownership
60
+ end
@@ -1,27 +1,32 @@
1
1
  ActiveRecord::Schema.define(:version => 0) do
2
2
  create_table :users, :force => true do |t|
3
- t.string :login
4
- t.string :state
3
+ end
4
+
5
+ create_table :nots, :force => true do |t|
6
+ t.string :title
7
+ t.text :body, :limit => 16777216
5
8
 
6
9
  t.timestamps
7
10
  end
8
11
 
9
- create_table :projects, :force => true do |t|
12
+ create_table :defaults, :force => true do |t|
10
13
  t.string :title
11
- t.text :description
14
+ t.text :body, :limit => 16777216
12
15
 
13
16
  t.timestamps
14
17
  end
15
18
 
16
- create_table :games, :force => true do |t|
19
+ create_table :creates, :force => true do |t|
17
20
  t.string :title
18
- t.text :description
21
+ t.text :body, :limit => 16777216
22
+ t.string :state
19
23
 
20
24
  t.timestamps
21
25
  end
22
26
 
23
- create_table :employees, :force => true do |t|
24
- t.string :name
27
+ create_table :updates, :force => true do |t|
28
+ t.string :title
29
+ t.text :body, :limit => 16777216
25
30
 
26
31
  t.timestamps
27
32
  end
@@ -32,7 +37,8 @@ ActiveRecord::Schema.define(:version => 0) do
32
37
  t.string :event, :null => false
33
38
  t.integer :state, :null => false, :default => 0
34
39
  t.integer :owner_id
35
- t.text :object
40
+ t.text :object, :limit => 16777216
41
+ t.text :original, :limit => 16777216
36
42
  t.text :reason
37
43
 
38
44
  t.timestamps
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts-as-approvable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.7
4
+ version: 0.6.8.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -15,51 +15,95 @@ date: 2012-02-14 00:00:00.000000000Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: activerecord
18
- requirement: &70101555625900 !ruby/object:Gem::Requirement
18
+ requirement: &70189871219020 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ~>
22
22
  - !ruby/object:Gem::Version
23
- version: '2.3'
23
+ version: 2.3.14
24
24
  type: :development
25
25
  prerelease: false
26
- version_requirements: *70101555625900
26
+ version_requirements: *70189871219020
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: appraisal
29
- requirement: &70101555624660 !ruby/object:Gem::Requirement
29
+ requirement: &70189871218380 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
- - - ! '>='
32
+ - - ~>
33
33
  - !ruby/object:Gem::Version
34
- version: '0'
34
+ version: 0.4.1
35
35
  type: :development
36
36
  prerelease: false
37
- version_requirements: *70101555624660
37
+ version_requirements: *70189871218380
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: redcarpet
40
- requirement: &70101555616860 !ruby/object:Gem::Requirement
40
+ requirement: &70189871217740 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - ! '>='
43
+ - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: '0'
45
+ version: 2.1.0
46
46
  type: :development
47
47
  prerelease: false
48
- version_requirements: *70101555616860
48
+ version_requirements: *70189871217740
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: shoulda
51
- requirement: &70101555614540 !ruby/object:Gem::Requirement
51
+ requirement: &70189871217020 !ruby/object:Gem::Requirement
52
52
  none: false
53
53
  requirements:
54
- - - ! '>='
54
+ - - ~>
55
55
  - !ruby/object:Gem::Version
56
- version: '0'
56
+ version: '2.0'
57
+ type: :development
58
+ prerelease: false
59
+ version_requirements: *70189871217020
60
+ - !ruby/object:Gem::Dependency
61
+ name: rspec
62
+ requirement: &70189871152460 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ~>
66
+ - !ruby/object:Gem::Version
67
+ version: 2.8.0
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: *70189871152460
71
+ - !ruby/object:Gem::Dependency
72
+ name: timecop
73
+ requirement: &70189871151700 !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ~>
77
+ - !ruby/object:Gem::Version
78
+ version: 0.3.5
57
79
  type: :development
58
80
  prerelease: false
59
- version_requirements: *70101555614540
81
+ version_requirements: *70189871151700
60
82
  - !ruby/object:Gem::Dependency
61
- name: sqlite3
62
- requirement: &70101555613200 !ruby/object:Gem::Requirement
83
+ name: cucumber
84
+ requirement: &70189871151120 !ruby/object:Gem::Requirement
85
+ none: false
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 1.1.0
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: *70189871151120
93
+ - !ruby/object:Gem::Dependency
94
+ name: rake
95
+ requirement: &70189871150360 !ruby/object:Gem::Requirement
96
+ none: false
97
+ requirements:
98
+ - - ~>
99
+ - !ruby/object:Gem::Version
100
+ version: 0.9.2
101
+ type: :development
102
+ prerelease: false
103
+ version_requirements: *70189871150360
104
+ - !ruby/object:Gem::Dependency
105
+ name: yard
106
+ requirement: &70189871149940 !ruby/object:Gem::Requirement
63
107
  none: false
64
108
  requirements:
65
109
  - - ! '>='
@@ -67,10 +111,21 @@ dependencies:
67
111
  version: '0'
68
112
  type: :development
69
113
  prerelease: false
70
- version_requirements: *70101555613200
114
+ version_requirements: *70189871149940
71
115
  - !ruby/object:Gem::Dependency
72
- name: mocha
73
- requirement: &70101555612300 !ruby/object:Gem::Requirement
116
+ name: pry
117
+ requirement: &70189871149320 !ruby/object:Gem::Requirement
118
+ none: false
119
+ requirements:
120
+ - - ~>
121
+ - !ruby/object:Gem::Version
122
+ version: 0.9.8.1
123
+ type: :development
124
+ prerelease: false
125
+ version_requirements: *70189871149320
126
+ - !ruby/object:Gem::Dependency
127
+ name: pry-syntax-hacks
128
+ requirement: &70189871148820 !ruby/object:Gem::Requirement
74
129
  none: false
75
130
  requirements:
76
131
  - - ! '>='
@@ -78,10 +133,10 @@ dependencies:
78
133
  version: '0'
79
134
  type: :development
80
135
  prerelease: false
81
- version_requirements: *70101555612300
136
+ version_requirements: *70189871148820
82
137
  - !ruby/object:Gem::Dependency
83
- name: rake
84
- requirement: &70101555610440 !ruby/object:Gem::Requirement
138
+ name: simplecov
139
+ requirement: &70189871148180 !ruby/object:Gem::Requirement
85
140
  none: false
86
141
  requirements:
87
142
  - - ! '>='
@@ -89,10 +144,10 @@ dependencies:
89
144
  version: '0'
90
145
  type: :development
91
146
  prerelease: false
92
- version_requirements: *70101555610440
147
+ version_requirements: *70189871148180
93
148
  - !ruby/object:Gem::Dependency
94
- name: simplecov
95
- requirement: &70101555602680 !ruby/object:Gem::Requirement
149
+ name: pry-coolline
150
+ requirement: &70189871147640 !ruby/object:Gem::Requirement
96
151
  none: false
97
152
  requirements:
98
153
  - - ! '>='
@@ -100,10 +155,10 @@ dependencies:
100
155
  version: '0'
101
156
  type: :development
102
157
  prerelease: false
103
- version_requirements: *70101555602680
158
+ version_requirements: *70189871147640
104
159
  - !ruby/object:Gem::Dependency
105
- name: yard
106
- requirement: &70101555601760 !ruby/object:Gem::Requirement
160
+ name: pry-stack_explorer
161
+ requirement: &70189871147080 !ruby/object:Gem::Requirement
107
162
  none: false
108
163
  requirements:
109
164
  - - ! '>='
@@ -111,10 +166,21 @@ dependencies:
111
166
  version: '0'
112
167
  type: :development
113
168
  prerelease: false
114
- version_requirements: *70101555601760
169
+ version_requirements: *70189871147080
115
170
  - !ruby/object:Gem::Dependency
116
- name: pry
117
- requirement: &70101555601200 !ruby/object:Gem::Requirement
171
+ name: pry-nav
172
+ requirement: &70189871146340 !ruby/object:Gem::Requirement
173
+ none: false
174
+ requirements:
175
+ - - ~>
176
+ - !ruby/object:Gem::Version
177
+ version: 0.1.0
178
+ type: :development
179
+ prerelease: false
180
+ version_requirements: *70189871146340
181
+ - !ruby/object:Gem::Dependency
182
+ name: plymouth
183
+ requirement: &70189871145480 !ruby/object:Gem::Requirement
118
184
  none: false
119
185
  requirements:
120
186
  - - ! '>='
@@ -122,7 +188,7 @@ dependencies:
122
188
  version: '0'
123
189
  type: :development
124
190
  prerelease: false
125
- version_requirements: *70101555601200
191
+ version_requirements: *70189871145480
126
192
  description: Generic approval queues for record creation and updates
127
193
  email: dwarf@girsbrain.org
128
194
  executables: []
@@ -130,6 +196,8 @@ extensions: []
130
196
  extra_rdoc_files: []
131
197
  files:
132
198
  - .gitignore
199
+ - .rspec
200
+ - .travis.yml
133
201
  - Appraisals
134
202
  - CHANGELOG
135
203
  - Gemfile
@@ -139,14 +207,23 @@ files:
139
207
  - Rakefile
140
208
  - VERSION
141
209
  - acts-as-approvable.gemspec
210
+ - features/create_approval.feature
211
+ - features/step_definitions/cucumber_steps.rb
212
+ - features/support/env.rb
213
+ - features/support/large.txt
214
+ - features/support/second_large.txt
215
+ - features/update_approval.feature
216
+ - gemfiles/Gemfile.ci
217
+ - gemfiles/Gemfile.ci.lock
218
+ - gemfiles/mysql2.gemfile
219
+ - gemfiles/mysql2.gemfile.lock
142
220
  - gemfiles/rails2.gemfile
143
221
  - gemfiles/rails2.gemfile.lock
144
222
  - gemfiles/rails30.gemfile
145
223
  - gemfiles/rails30.gemfile.lock
146
224
  - gemfiles/rails31.gemfile
147
225
  - gemfiles/rails31.gemfile.lock
148
- - gemfiles/rails32.gemfile
149
- - gemfiles/rails32.gemfile.lock
226
+ - gemfiles/sqlite.gemfile
150
227
  - generators/acts_as_approvable/USAGE
151
228
  - generators/acts_as_approvable/acts_as_approvable_generator.rb
152
229
  - generators/acts_as_approvable/templates/approvals.js
@@ -163,9 +240,13 @@ files:
163
240
  - init.rb
164
241
  - lib/acts-as-approvable.rb
165
242
  - lib/acts-as-approvable/version.rb
166
- - lib/acts_as_approvable/acts_as_approvable.rb
167
243
  - lib/acts_as_approvable/approval.rb
168
244
  - lib/acts_as_approvable/error.rb
245
+ - lib/acts_as_approvable/model.rb
246
+ - lib/acts_as_approvable/model/class_methods.rb
247
+ - lib/acts_as_approvable/model/create_instance_methods.rb
248
+ - lib/acts_as_approvable/model/instance_methods.rb
249
+ - lib/acts_as_approvable/model/update_instance_methods.rb
169
250
  - lib/acts_as_approvable/ownership.rb
170
251
  - lib/acts_as_approvable/railtie.rb
171
252
  - lib/generators/acts_as_approvable/USAGE
@@ -185,14 +266,22 @@ files:
185
266
  - lib/generators/haml/templates/index.html.haml
186
267
  - lib/tasks/acts_as_approvable.rake
187
268
  - rails/init.rb
188
- - test/acts_as_approvable_model_test.rb
189
- - test/acts_as_approvable_ownership_test.rb
190
- - test/acts_as_approvable_schema_test.rb
191
- - test/acts_as_approvable_test.rb
192
- - test/database.yml
193
- - test/schema.rb
194
- - test/support.rb
195
- - test/test_helper.rb
269
+ - spec/acts_as_approvable/approval_spec.rb
270
+ - spec/acts_as_approvable/model/class_methods_spec.rb
271
+ - spec/acts_as_approvable/model/create_instance_methods_spec.rb
272
+ - spec/acts_as_approvable/model/instance_methods_spec.rb
273
+ - spec/acts_as_approvable/model/update_instance_methods_spec.rb
274
+ - spec/acts_as_approvable/model_spec.rb
275
+ - spec/acts_as_approvable/ownership/class_methods_spec.rb
276
+ - spec/acts_as_approvable/ownership/instance_methods_spec.rb
277
+ - spec/acts_as_approvable/ownership_spec.rb
278
+ - spec/acts_as_approvable_spec.rb
279
+ - spec/spec_helper.rb
280
+ - spec/support/database.rb
281
+ - spec/support/database.yml
282
+ - spec/support/matchers.rb
283
+ - spec/support/models.rb
284
+ - spec/support/schema.rb
196
285
  homepage: http://github.com/jlogsdon/acts_as_approvable
197
286
  licenses: []
198
287
  post_install_message:
@@ -218,12 +307,26 @@ signing_key:
218
307
  specification_version: 3
219
308
  summary: Generic approval queues for record creation and updates
220
309
  test_files:
221
- - test/acts_as_approvable_model_test.rb
222
- - test/acts_as_approvable_ownership_test.rb
223
- - test/acts_as_approvable_schema_test.rb
224
- - test/acts_as_approvable_test.rb
225
- - test/database.yml
226
- - test/schema.rb
227
- - test/support.rb
228
- - test/test_helper.rb
310
+ - features/create_approval.feature
311
+ - features/step_definitions/cucumber_steps.rb
312
+ - features/support/env.rb
313
+ - features/support/large.txt
314
+ - features/support/second_large.txt
315
+ - features/update_approval.feature
316
+ - spec/acts_as_approvable/approval_spec.rb
317
+ - spec/acts_as_approvable/model/class_methods_spec.rb
318
+ - spec/acts_as_approvable/model/create_instance_methods_spec.rb
319
+ - spec/acts_as_approvable/model/instance_methods_spec.rb
320
+ - spec/acts_as_approvable/model/update_instance_methods_spec.rb
321
+ - spec/acts_as_approvable/model_spec.rb
322
+ - spec/acts_as_approvable/ownership/class_methods_spec.rb
323
+ - spec/acts_as_approvable/ownership/instance_methods_spec.rb
324
+ - spec/acts_as_approvable/ownership_spec.rb
325
+ - spec/acts_as_approvable_spec.rb
326
+ - spec/spec_helper.rb
327
+ - spec/support/database.rb
328
+ - spec/support/database.yml
329
+ - spec/support/matchers.rb
330
+ - spec/support/models.rb
331
+ - spec/support/schema.rb
229
332
  has_rdoc: