requires_approval 1.0.5 → 1.0.6

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore ADDED
@@ -0,0 +1,51 @@
1
+ # rcov generated
2
+ coverage
3
+ coverage.data
4
+
5
+ # rdoc generated
6
+ rdoc
7
+
8
+ # yard generated
9
+ doc
10
+ .yardoc
11
+
12
+ # bundler
13
+ .bundle
14
+
15
+ # jeweler generated
16
+ pkg
17
+
18
+ spec/support/db.sqlite
19
+
20
+ # Have editor/IDE/OS specific files you need to ignore? Consider using a global gitignore:
21
+ #
22
+ # * Create a file at ~/.gitignore
23
+ # * Include files you want ignored
24
+ # * Run: git config --global core.excludesfile ~/.gitignore
25
+ #
26
+ # After doing this, these files will be ignored in all your git projects,
27
+ # saving you from having to 'pollute' every project you touch with them
28
+ #
29
+ # Not sure what to needs to be ignored for particular editors/OSes? Here's some ideas to get you started. (Remember, remove the leading # of the line)
30
+ #
31
+ # For MacOS:
32
+ #
33
+ #.DS_Store
34
+
35
+ # For TextMate
36
+ #*.tmproj
37
+ #tmtags
38
+
39
+ # For emacs:
40
+ #*~
41
+ #\#*
42
+ #.\#*
43
+
44
+ # For vim:
45
+ #*.swp
46
+
47
+ # For redcar:
48
+ #.redcar
49
+
50
+ # For rubinius:
51
+ #*.rbc
data/Gemfile CHANGED
@@ -3,21 +3,4 @@ source "http://rubygems.org"
3
3
  # Example:
4
4
  # gem "activesupport", ">= 2.3.5"
5
5
 
6
- gem "activerecord", "~> 3"
7
- gem "activesupport", "~> 3"
8
-
9
- # Add dependencies to develop your gem here.
10
- # Include everything needed to run rake, tests, features, etc.
11
- group :development do
12
- gem "bundler"
13
- gem "guard-rspec"
14
- gem "guard-bundler"
15
- gem "guard-spork"
16
- gem "jeweler", "~> 1.8.3"
17
- gem "mocha"
18
- gem "rdoc"
19
- gem "rspec"
20
- gem "ruby-debug19", :require => "ruby-debug"
21
- gem "sqlite3"
22
- gem "yard"
23
- end
6
+ gemspec :name => "requires_approval"
data/Gemfile.lock CHANGED
@@ -1,20 +1,27 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ requires_approval (1.0.6)
5
+ activerecord (~> 3)
6
+ activesupport (~> 3)
7
+
1
8
  GEM
2
9
  remote: http://rubygems.org/
3
10
  specs:
4
- activemodel (3.2.8)
5
- activesupport (= 3.2.8)
11
+ activemodel (3.2.11)
12
+ activesupport (= 3.2.11)
6
13
  builder (~> 3.0.0)
7
- activerecord (3.2.8)
8
- activemodel (= 3.2.8)
9
- activesupport (= 3.2.8)
14
+ activerecord (3.2.11)
15
+ activemodel (= 3.2.11)
16
+ activesupport (= 3.2.11)
10
17
  arel (~> 3.0.2)
11
18
  tzinfo (~> 0.3.29)
12
- activesupport (3.2.8)
19
+ activesupport (3.2.11)
13
20
  i18n (~> 0.6)
14
21
  multi_json (~> 1.0)
15
22
  archive-tar-minitar (0.5.2)
16
23
  arel (3.0.2)
17
- builder (3.0.0)
24
+ builder (3.0.4)
18
25
  columnize (0.3.6)
19
26
  diff-lcs (1.1.3)
20
27
  ffi (1.1.5)
@@ -30,7 +37,7 @@ GEM
30
37
  guard-spork (1.1.0)
31
38
  guard (>= 1.1)
32
39
  spork (>= 0.8.4)
33
- i18n (0.6.0)
40
+ i18n (0.6.1)
34
41
  jeweler (1.8.4)
35
42
  bundler (~> 1.0)
36
43
  git (>= 1.2.5)
@@ -46,7 +53,7 @@ GEM
46
53
  metaclass (0.0.1)
47
54
  mocha (0.12.3)
48
55
  metaclass (~> 0.0.1)
49
- multi_json (1.3.6)
56
+ multi_json (1.5.0)
50
57
  rake (0.9.2.2)
51
58
  rb-fchange (0.0.5)
52
59
  ffi
@@ -76,15 +83,13 @@ GEM
76
83
  spork (0.9.2)
77
84
  sqlite3 (1.3.6)
78
85
  thor (0.16.0)
79
- tzinfo (0.3.33)
86
+ tzinfo (0.3.35)
80
87
  yard (0.8.2.1)
81
88
 
82
89
  PLATFORMS
83
90
  ruby
84
91
 
85
92
  DEPENDENCIES
86
- activerecord (~> 3)
87
- activesupport (~> 3)
88
93
  bundler
89
94
  guard-bundler
90
95
  guard-rspec
@@ -92,6 +97,7 @@ DEPENDENCIES
92
97
  jeweler (~> 1.8.3)
93
98
  mocha
94
99
  rdoc
100
+ requires_approval!
95
101
  rspec
96
102
  ruby-debug19
97
103
  sqlite3
@@ -70,9 +70,11 @@ module RequiresApproval
70
70
  true
71
71
  end
72
72
 
73
- # if we have denied all changes, remove the record
73
+ # if we have denied all changes, remove the record and
74
+ # make sure it isn't frozen
74
75
  unless self.has_pending_changes?
75
76
  self.latest_unapproved_version.destroy
77
+ self.update_attribute(:is_frozen, false)
76
78
  else
77
79
  self.latest_unapproved_version.save
78
80
  end
@@ -1,91 +1,39 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
1
  # -*- encoding: utf-8 -*-
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'requires_approval/version'
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "requires_approval"
8
- s.version = "1.0.5"
8
+ s.version = RequiresApproval::VERSION
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Dan Langevin"]
12
12
  s.date = "2012-10-12"
13
+ s.summary = "Gem to handle versioning and things that require approval"
13
14
  s.description = "Gem to handle versioning and things that require approval"
14
15
  s.email = "dan.langevin@lifebooker.com"
15
- s.extra_rdoc_files = [
16
- "LICENSE.txt",
17
- "README.rdoc"
18
- ]
19
- s.files = [
20
- ".document",
21
- ".rspec",
22
- "Gemfile",
23
- "Gemfile.lock",
24
- "Guardfile",
25
- "LICENSE.txt",
26
- "README.rdoc",
27
- "Rakefile",
28
- "VERSION",
29
- "lib/errors.rb",
30
- "lib/requires_approval.rb",
31
- "requires_approval.gemspec",
32
- "requires_approval_rails_2.gemspec",
33
- "spec/lib/requires_approval_spec.rb",
34
- "spec/spec_helper.rb",
35
- "spec/support/BLANK"
36
- ]
37
16
  s.homepage = "http://github.com/LifebookerInc/requires_approval"
38
17
  s.licenses = ["MIT"]
39
18
  s.require_paths = ["lib"]
19
+ s.files = `git ls-files`.split($/)
20
+ s.executables = s.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
21
+ s.test_files = s.files.grep(%r{^(test|spec|features)/})
22
+ s.require_paths = ["lib"]
40
23
  s.rubygems_version = "1.8.11"
41
- s.summary = "Gem to handle versioning and things that require approval"
42
-
43
- if s.respond_to? :specification_version then
44
- s.specification_version = 3
45
24
 
46
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
47
- s.add_runtime_dependency(%q<activerecord>, ["~> 3"])
48
- s.add_runtime_dependency(%q<activesupport>, ["~> 3"])
49
- s.add_development_dependency(%q<bundler>, [">= 0"])
50
- s.add_development_dependency(%q<guard-rspec>, [">= 0"])
51
- s.add_development_dependency(%q<guard-bundler>, [">= 0"])
52
- s.add_development_dependency(%q<guard-spork>, [">= 0"])
53
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
54
- s.add_development_dependency(%q<mocha>, [">= 0"])
55
- s.add_development_dependency(%q<rdoc>, [">= 0"])
56
- s.add_development_dependency(%q<rspec>, [">= 0"])
57
- s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
58
- s.add_development_dependency(%q<sqlite3>, [">= 0"])
59
- s.add_development_dependency(%q<yard>, [">= 0"])
60
- else
61
- s.add_dependency(%q<activerecord>, ["~> 3"])
62
- s.add_dependency(%q<activesupport>, ["~> 3"])
63
- s.add_dependency(%q<bundler>, [">= 0"])
64
- s.add_dependency(%q<guard-rspec>, [">= 0"])
65
- s.add_dependency(%q<guard-bundler>, [">= 0"])
66
- s.add_dependency(%q<guard-spork>, [">= 0"])
67
- s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
68
- s.add_dependency(%q<mocha>, [">= 0"])
69
- s.add_dependency(%q<rdoc>, [">= 0"])
70
- s.add_dependency(%q<rspec>, [">= 0"])
71
- s.add_dependency(%q<ruby-debug19>, [">= 0"])
72
- s.add_dependency(%q<sqlite3>, [">= 0"])
73
- s.add_dependency(%q<yard>, [">= 0"])
74
- end
75
- else
76
- s.add_dependency(%q<activerecord>, ["~> 3"])
77
- s.add_dependency(%q<activesupport>, ["~> 3"])
78
- s.add_dependency(%q<bundler>, [">= 0"])
79
- s.add_dependency(%q<guard-rspec>, [">= 0"])
80
- s.add_dependency(%q<guard-bundler>, [">= 0"])
81
- s.add_dependency(%q<guard-spork>, [">= 0"])
82
- s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
83
- s.add_dependency(%q<mocha>, [">= 0"])
84
- s.add_dependency(%q<rdoc>, [">= 0"])
85
- s.add_dependency(%q<rspec>, [">= 0"])
86
- s.add_dependency(%q<ruby-debug19>, [">= 0"])
87
- s.add_dependency(%q<sqlite3>, [">= 0"])
88
- s.add_dependency(%q<yard>, [">= 0"])
89
- end
25
+ s.add_runtime_dependency(%q<activerecord>, ["~> 3"])
26
+ s.add_runtime_dependency(%q<activesupport>, ["~> 3"])
27
+ s.add_development_dependency(%q<bundler>, [">= 0"])
28
+ s.add_development_dependency(%q<guard-rspec>, [">= 0"])
29
+ s.add_development_dependency(%q<guard-bundler>, [">= 0"])
30
+ s.add_development_dependency(%q<guard-spork>, [">= 0"])
31
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
32
+ s.add_development_dependency(%q<mocha>, [">= 0"])
33
+ s.add_development_dependency(%q<rdoc>, [">= 0"])
34
+ s.add_development_dependency(%q<rspec>, [">= 0"])
35
+ s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
36
+ s.add_development_dependency(%q<sqlite3>, [">= 0"])
37
+ s.add_development_dependency(%q<yard>, [">= 0"])
90
38
  end
91
39
 
@@ -462,6 +462,23 @@ describe RequiresApproval do
462
462
  )
463
463
  end
464
464
 
465
+ it "should set is_frozen to false when denying all attributes" do
466
+
467
+ u = User.create(
468
+ :first_name => "Dan",
469
+ :last_name => "Langevin",
470
+ :birthday => Date.today
471
+ )
472
+ u.approve_all_attributes
473
+
474
+ u.update_attributes(:first_name => "Changed!", :is_frozen => true)
475
+ u.is_frozen?.should eql(true)
476
+
477
+ u.deny_attributes(:first_name)
478
+ u.is_frozen?.should eql(false)
479
+
480
+ end
481
+
465
482
  end
466
483
 
467
484
  context "#has_approved_version?" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: requires_approval
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-10-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activerecord
16
- requirement: &2168522820 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '3'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2168522820
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '3'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: activesupport
27
- requirement: &2168521560 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ~>
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '3'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *2168521560
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '3'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: bundler
38
- requirement: &2168520320 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '0'
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *2168520320
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: guard-rspec
49
- requirement: &2168518400 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '0'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *2168518400
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: guard-bundler
60
- requirement: &2168516160 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *2168516160
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: guard-spork
71
- requirement: &2168514860 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ! '>='
@@ -76,10 +101,15 @@ dependencies:
76
101
  version: '0'
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *2168514860
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
80
110
  - !ruby/object:Gem::Dependency
81
111
  name: jeweler
82
- requirement: &2168513920 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
83
113
  none: false
84
114
  requirements:
85
115
  - - ~>
@@ -87,10 +117,15 @@ dependencies:
87
117
  version: 1.8.3
88
118
  type: :development
89
119
  prerelease: false
90
- version_requirements: *2168513920
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 1.8.3
91
126
  - !ruby/object:Gem::Dependency
92
127
  name: mocha
93
- requirement: &2168512820 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
94
129
  none: false
95
130
  requirements:
96
131
  - - ! '>='
@@ -98,10 +133,15 @@ dependencies:
98
133
  version: '0'
99
134
  type: :development
100
135
  prerelease: false
101
- version_requirements: *2168512820
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
102
142
  - !ruby/object:Gem::Dependency
103
143
  name: rdoc
104
- requirement: &2168511880 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
105
145
  none: false
106
146
  requirements:
107
147
  - - ! '>='
@@ -109,10 +149,15 @@ dependencies:
109
149
  version: '0'
110
150
  type: :development
111
151
  prerelease: false
112
- version_requirements: *2168511880
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
113
158
  - !ruby/object:Gem::Dependency
114
159
  name: rspec
115
- requirement: &2168510840 !ruby/object:Gem::Requirement
160
+ requirement: !ruby/object:Gem::Requirement
116
161
  none: false
117
162
  requirements:
118
163
  - - ! '>='
@@ -120,10 +165,15 @@ dependencies:
120
165
  version: '0'
121
166
  type: :development
122
167
  prerelease: false
123
- version_requirements: *2168510840
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
124
174
  - !ruby/object:Gem::Dependency
125
175
  name: ruby-debug19
126
- requirement: &2168509940 !ruby/object:Gem::Requirement
176
+ requirement: !ruby/object:Gem::Requirement
127
177
  none: false
128
178
  requirements:
129
179
  - - ! '>='
@@ -131,10 +181,15 @@ dependencies:
131
181
  version: '0'
132
182
  type: :development
133
183
  prerelease: false
134
- version_requirements: *2168509940
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
135
190
  - !ruby/object:Gem::Dependency
136
191
  name: sqlite3
137
- requirement: &2168508940 !ruby/object:Gem::Requirement
192
+ requirement: !ruby/object:Gem::Requirement
138
193
  none: false
139
194
  requirements:
140
195
  - - ! '>='
@@ -142,10 +197,15 @@ dependencies:
142
197
  version: '0'
143
198
  type: :development
144
199
  prerelease: false
145
- version_requirements: *2168508940
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
202
+ requirements:
203
+ - - ! '>='
204
+ - !ruby/object:Gem::Version
205
+ version: '0'
146
206
  - !ruby/object:Gem::Dependency
147
207
  name: yard
148
- requirement: &2168508200 !ruby/object:Gem::Requirement
208
+ requirement: !ruby/object:Gem::Requirement
149
209
  none: false
150
210
  requirements:
151
211
  - - ! '>='
@@ -153,16 +213,20 @@ dependencies:
153
213
  version: '0'
154
214
  type: :development
155
215
  prerelease: false
156
- version_requirements: *2168508200
216
+ version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
218
+ requirements:
219
+ - - ! '>='
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
157
222
  description: Gem to handle versioning and things that require approval
158
223
  email: dan.langevin@lifebooker.com
159
224
  executables: []
160
225
  extensions: []
161
- extra_rdoc_files:
162
- - LICENSE.txt
163
- - README.rdoc
226
+ extra_rdoc_files: []
164
227
  files:
165
228
  - .document
229
+ - .gitignore
166
230
  - .rspec
167
231
  - Gemfile
168
232
  - Gemfile.lock
@@ -191,9 +255,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
191
255
  - - ! '>='
192
256
  - !ruby/object:Gem::Version
193
257
  version: '0'
194
- segments:
195
- - 0
196
- hash: 2029788370061406567
197
258
  required_rubygems_version: !ruby/object:Gem::Requirement
198
259
  none: false
199
260
  requirements:
@@ -202,8 +263,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
202
263
  version: '0'
203
264
  requirements: []
204
265
  rubyforge_project:
205
- rubygems_version: 1.8.11
266
+ rubygems_version: 1.8.24
206
267
  signing_key:
207
268
  specification_version: 3
208
269
  summary: Gem to handle versioning and things that require approval
209
- test_files: []
270
+ test_files:
271
+ - spec/lib/requires_approval_spec.rb
272
+ - spec/spec_helper.rb
273
+ - spec/support/BLANK
274
+ has_rdoc: