acts-as-approvable 0.6.5 → 0.6.6

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,8 @@
1
+ == 0.6.6
2
+
3
+ * `#pending_changes?` should not be true if there are no pending update
4
+ approvals.
5
+
1
6
  == 0.6.5
2
7
 
3
8
  * Copy javascripts if `--scripts` is passed to the generator. AJAXifies the
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- acts-as-approvable (0.6.5)
4
+ acts-as-approvable (0.6.6)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
data/README.md CHANGED
@@ -85,7 +85,7 @@ Require approval for new Users, but not modifications...
85
85
 
86
86
  # Let the user know they were rejected
87
87
  def after_reject(approval)
88
- ApprovalMailer.deliver_user_approved(self.email, approval.reason)
88
+ ApprovalMailer.deliver_user_rejected(self.email, approval.reason)
89
89
  end
90
90
  end
91
91
 
data/Rakefile CHANGED
@@ -51,7 +51,7 @@ if RUBY_VERSION =~ /^1\.8/
51
51
  elsif RUBY_VERSION =~ /^1\.9/
52
52
  namespace :test do
53
53
  task :coverage do
54
- ENV['COVERAGE'] = true
54
+ ENV['COVERAGE'] = 'true'
55
55
  Rake::Task['test'].invoke
56
56
  end
57
57
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.6.5
1
+ 0.6.6
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: /Users/jlogsdon/Code/acts_as_approvable/acts_as_approvable
3
3
  specs:
4
- acts-as-approvable (0.6.5)
4
+ acts-as-approvable (0.6.6)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: /Users/jlogsdon/Code/acts_as_approvable/acts_as_approvable
3
3
  specs:
4
- acts-as-approvable (0.6.5)
4
+ acts-as-approvable (0.6.6)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: /Users/jlogsdon/Code/acts_as_approvable/acts_as_approvable
3
3
  specs:
4
- acts-as-approvable (0.6.5)
4
+ acts-as-approvable (0.6.6)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: /Users/jlogsdon/Code/acts_as_approvable/acts_as_approvable
3
3
  specs:
4
- acts-as-approvable (0.6.5)
4
+ acts-as-approvable (0.6.6)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -162,15 +162,15 @@ module ActsAsApprovable
162
162
  module UpdateInstanceMethods
163
163
  ##
164
164
  # Retrieve all approval records for `:update` events.
165
- def update_approvals
166
- approvals.find_all_by_event('update')
165
+ def update_approvals(all = true)
166
+ all ? approvals.find_all_by_event('update') : approvals.find_all_by_event_and_state('update', 0)
167
167
  end
168
168
 
169
169
  ##
170
170
  # Returns true if the record has any `#update_approvals` that are pending
171
171
  # approval.
172
172
  def pending_changes?
173
- !update_approvals.empty?
173
+ !update_approvals(false).empty?
174
174
  end
175
175
 
176
176
  ##
@@ -100,6 +100,37 @@ class ActsAsApprovableModelTest < Test::Unit::TestCase
100
100
  end
101
101
  end
102
102
 
103
+ context 'that has approved, rejected and pending update approvals' do
104
+ setup do
105
+ @game.update_attributes(:title => 'review1')
106
+ @game.update_approvals.last.approve!(true)
107
+
108
+ @game.update_attributes(:title => 'review2')
109
+ @game.update_approvals.last.reject!
110
+
111
+ @game.update_attributes(:title => 'review3')
112
+ @game.update_attributes(:title => 'review4')
113
+ end
114
+
115
+ should 'have #pending_changes?' do
116
+ assert @game.pending_changes?
117
+ end
118
+ end
119
+
120
+ context 'that has approved and rejected, but no pending update approvals' do
121
+ setup do
122
+ @game.update_attributes(:title => 'review1')
123
+ @game.update_approvals.last.approve!(true)
124
+
125
+ @game.update_attributes(:title => 'review2')
126
+ @game.update_approvals.last.reject!
127
+ end
128
+
129
+ should 'have #pending_changes?' do
130
+ assert !@game.pending_changes?
131
+ end
132
+ end
133
+
103
134
  context 'that is altered using #without_approval' do
104
135
  setup { @game.without_approval { |i| i.update_attribute(:title, 'updated') } }
105
136
 
data/test/test_helper.rb CHANGED
@@ -1,6 +1,8 @@
1
1
  if RUBY_VERSION =~ /^1\.9/
2
2
  require 'simplecov'
3
- SimpleCov.start if ENV['COVERAGE']
3
+ SimpleCov.start do
4
+ add_filter '/test/'
5
+ end if ENV['COVERAGE']
4
6
  end
5
7
 
6
8
  ENV['RAILS_ENV'] = 'test'
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.5
4
+ version: 0.6.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -15,7 +15,7 @@ date: 2012-02-14 00:00:00.000000000Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: activerecord
18
- requirement: &70261451581460 !ruby/object:Gem::Requirement
18
+ requirement: &70167838590460 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ~>
@@ -23,10 +23,10 @@ dependencies:
23
23
  version: '2.3'
24
24
  type: :development
25
25
  prerelease: false
26
- version_requirements: *70261451581460
26
+ version_requirements: *70167838590460
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: appraisal
29
- requirement: &70261451581040 !ruby/object:Gem::Requirement
29
+ requirement: &70167838589860 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
32
  - - ! '>='
@@ -34,10 +34,10 @@ dependencies:
34
34
  version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
- version_requirements: *70261451581040
37
+ version_requirements: *70167838589860
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: redcarpet
40
- requirement: &70261451580580 !ruby/object:Gem::Requirement
40
+ requirement: &70167838589180 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ! '>='
@@ -45,10 +45,10 @@ dependencies:
45
45
  version: '0'
46
46
  type: :development
47
47
  prerelease: false
48
- version_requirements: *70261451580580
48
+ version_requirements: *70167838589180
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: shoulda
51
- requirement: &70261451580100 !ruby/object:Gem::Requirement
51
+ requirement: &70167838588320 !ruby/object:Gem::Requirement
52
52
  none: false
53
53
  requirements:
54
54
  - - ! '>='
@@ -56,10 +56,10 @@ dependencies:
56
56
  version: '0'
57
57
  type: :development
58
58
  prerelease: false
59
- version_requirements: *70261451580100
59
+ version_requirements: *70167838588320
60
60
  - !ruby/object:Gem::Dependency
61
61
  name: sqlite3
62
- requirement: &70261451579620 !ruby/object:Gem::Requirement
62
+ requirement: &70167838415340 !ruby/object:Gem::Requirement
63
63
  none: false
64
64
  requirements:
65
65
  - - ! '>='
@@ -67,10 +67,10 @@ dependencies:
67
67
  version: '0'
68
68
  type: :development
69
69
  prerelease: false
70
- version_requirements: *70261451579620
70
+ version_requirements: *70167838415340
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: mocha
73
- requirement: &70261451579100 !ruby/object:Gem::Requirement
73
+ requirement: &70167838414280 !ruby/object:Gem::Requirement
74
74
  none: false
75
75
  requirements:
76
76
  - - ! '>='
@@ -78,10 +78,10 @@ dependencies:
78
78
  version: '0'
79
79
  type: :development
80
80
  prerelease: false
81
- version_requirements: *70261451579100
81
+ version_requirements: *70167838414280
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: rake
84
- requirement: &70261451571860 !ruby/object:Gem::Requirement
84
+ requirement: &70167838412720 !ruby/object:Gem::Requirement
85
85
  none: false
86
86
  requirements:
87
87
  - - ! '>='
@@ -89,10 +89,10 @@ dependencies:
89
89
  version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
- version_requirements: *70261451571860
92
+ version_requirements: *70167838412720
93
93
  - !ruby/object:Gem::Dependency
94
94
  name: simplecov
95
- requirement: &70261451571300 !ruby/object:Gem::Requirement
95
+ requirement: &70167838410360 !ruby/object:Gem::Requirement
96
96
  none: false
97
97
  requirements:
98
98
  - - ! '>='
@@ -100,10 +100,10 @@ dependencies:
100
100
  version: '0'
101
101
  type: :development
102
102
  prerelease: false
103
- version_requirements: *70261451571300
103
+ version_requirements: *70167838410360
104
104
  - !ruby/object:Gem::Dependency
105
105
  name: yard
106
- requirement: &70261451570720 !ruby/object:Gem::Requirement
106
+ requirement: &70167838409200 !ruby/object:Gem::Requirement
107
107
  none: false
108
108
  requirements:
109
109
  - - ! '>='
@@ -111,10 +111,10 @@ dependencies:
111
111
  version: '0'
112
112
  type: :development
113
113
  prerelease: false
114
- version_requirements: *70261451570720
114
+ version_requirements: *70167838409200
115
115
  - !ruby/object:Gem::Dependency
116
116
  name: pry
117
- requirement: &70261451569920 !ruby/object:Gem::Requirement
117
+ requirement: &70167838408360 !ruby/object:Gem::Requirement
118
118
  none: false
119
119
  requirements:
120
120
  - - ! '>='
@@ -122,7 +122,7 @@ dependencies:
122
122
  version: '0'
123
123
  type: :development
124
124
  prerelease: false
125
- version_requirements: *70261451569920
125
+ version_requirements: *70167838408360
126
126
  description: Generic approval queues for record creation and updates
127
127
  email: dwarf@girsbrain.org
128
128
  executables: []