govuk_content_models 27.1.0 → 27.2.0
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.
- data/CHANGELOG.md +5 -0
- data/app/models/user.rb +4 -0
- data/app/models/workflow.rb +2 -1
- data/lib/govuk_content_models/version.rb +1 -1
- data/test/models/user_test.rb +19 -0
- metadata +146 -51
data/CHANGELOG.md
CHANGED
data/app/models/user.rb
CHANGED
|
@@ -78,4 +78,8 @@ class User
|
|
|
78
78
|
def assign(edition, recipient)
|
|
79
79
|
GovukContentModels::ActionProcessors::AssignProcessor.new(self, edition, { recipient_id: recipient.id }).processed_edition
|
|
80
80
|
end
|
|
81
|
+
|
|
82
|
+
def unassign(edition)
|
|
83
|
+
GovukContentModels::ActionProcessors::AssignProcessor.new(self, edition).processed_edition
|
|
84
|
+
end
|
|
81
85
|
end
|
data/app/models/workflow.rb
CHANGED
|
@@ -116,7 +116,8 @@ module Workflow
|
|
|
116
116
|
end
|
|
117
117
|
|
|
118
118
|
def denormalise_users!
|
|
119
|
-
|
|
119
|
+
new_assignee = assigned_to.try(:name)
|
|
120
|
+
set(:assignee, new_assignee) unless new_assignee == assignee
|
|
120
121
|
update_user_action("creator", [Action::CREATE, Action::NEW_VERSION])
|
|
121
122
|
update_user_action("publisher", [Action::PUBLISH])
|
|
122
123
|
update_user_action("archiver", [Action::ARCHIVE])
|
data/test/models/user_test.rb
CHANGED
|
@@ -123,6 +123,25 @@ class UserTest < ActiveSupport::TestCase
|
|
|
123
123
|
assert_equal(worker_user, publication.assigned_to)
|
|
124
124
|
end
|
|
125
125
|
|
|
126
|
+
test "Edition can be unassigned" do
|
|
127
|
+
boss_user = FactoryGirl.create(:user, :name => "Mat")
|
|
128
|
+
worker_user = FactoryGirl.create(:user, :name => "Grunt")
|
|
129
|
+
|
|
130
|
+
publication = boss_user.create_edition(:answer, title: "test answer", slug: "test", panopticon_id: @artefact.id)
|
|
131
|
+
boss_user.assign(publication, worker_user)
|
|
132
|
+
publication.save
|
|
133
|
+
publication.reload
|
|
134
|
+
|
|
135
|
+
assert_equal(worker_user, publication.assigned_to)
|
|
136
|
+
|
|
137
|
+
boss_user.unassign(publication)
|
|
138
|
+
publication.save
|
|
139
|
+
publication.reload
|
|
140
|
+
|
|
141
|
+
assert_nil publication.assigned_to
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
|
|
126
145
|
test "should default to a collection called 'users'" do
|
|
127
146
|
assert_equal "users", User.collection_name
|
|
128
147
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: govuk_content_models
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 27.
|
|
4
|
+
version: 27.2.0
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -13,7 +13,7 @@ date: 2014-12-12 00:00:00.000000000 Z
|
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: bson_ext
|
|
16
|
-
requirement:
|
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
|
17
17
|
none: false
|
|
18
18
|
requirements:
|
|
19
19
|
- - ! '>='
|
|
@@ -21,10 +21,15 @@ dependencies:
|
|
|
21
21
|
version: '0'
|
|
22
22
|
type: :runtime
|
|
23
23
|
prerelease: false
|
|
24
|
-
version_requirements:
|
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
25
|
+
none: false
|
|
26
|
+
requirements:
|
|
27
|
+
- - ! '>='
|
|
28
|
+
- !ruby/object:Gem::Version
|
|
29
|
+
version: '0'
|
|
25
30
|
- !ruby/object:Gem::Dependency
|
|
26
31
|
name: gds-api-adapters
|
|
27
|
-
requirement:
|
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
|
28
33
|
none: false
|
|
29
34
|
requirements:
|
|
30
35
|
- - ! '>='
|
|
@@ -32,10 +37,15 @@ dependencies:
|
|
|
32
37
|
version: 10.9.0
|
|
33
38
|
type: :runtime
|
|
34
39
|
prerelease: false
|
|
35
|
-
version_requirements:
|
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
41
|
+
none: false
|
|
42
|
+
requirements:
|
|
43
|
+
- - ! '>='
|
|
44
|
+
- !ruby/object:Gem::Version
|
|
45
|
+
version: 10.9.0
|
|
36
46
|
- !ruby/object:Gem::Dependency
|
|
37
47
|
name: gds-sso
|
|
38
|
-
requirement:
|
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
|
39
49
|
none: false
|
|
40
50
|
requirements:
|
|
41
51
|
- - ! '>='
|
|
@@ -43,10 +53,15 @@ dependencies:
|
|
|
43
53
|
version: 10.0.0
|
|
44
54
|
type: :runtime
|
|
45
55
|
prerelease: false
|
|
46
|
-
version_requirements:
|
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
57
|
+
none: false
|
|
58
|
+
requirements:
|
|
59
|
+
- - ! '>='
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: 10.0.0
|
|
47
62
|
- !ruby/object:Gem::Dependency
|
|
48
63
|
name: govspeak
|
|
49
|
-
requirement:
|
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
|
50
65
|
none: false
|
|
51
66
|
requirements:
|
|
52
67
|
- - ~>
|
|
@@ -54,10 +69,15 @@ dependencies:
|
|
|
54
69
|
version: 3.1.0
|
|
55
70
|
type: :runtime
|
|
56
71
|
prerelease: false
|
|
57
|
-
version_requirements:
|
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
73
|
+
none: false
|
|
74
|
+
requirements:
|
|
75
|
+
- - ~>
|
|
76
|
+
- !ruby/object:Gem::Version
|
|
77
|
+
version: 3.1.0
|
|
58
78
|
- !ruby/object:Gem::Dependency
|
|
59
79
|
name: mongoid
|
|
60
|
-
requirement:
|
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
|
61
81
|
none: false
|
|
62
82
|
requirements:
|
|
63
83
|
- - ~>
|
|
@@ -65,10 +85,15 @@ dependencies:
|
|
|
65
85
|
version: '2.5'
|
|
66
86
|
type: :runtime
|
|
67
87
|
prerelease: false
|
|
68
|
-
version_requirements:
|
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
89
|
+
none: false
|
|
90
|
+
requirements:
|
|
91
|
+
- - ~>
|
|
92
|
+
- !ruby/object:Gem::Version
|
|
93
|
+
version: '2.5'
|
|
69
94
|
- !ruby/object:Gem::Dependency
|
|
70
95
|
name: plek
|
|
71
|
-
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: :runtime
|
|
78
103
|
prerelease: false
|
|
79
|
-
version_requirements:
|
|
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: state_machine
|
|
82
|
-
requirement:
|
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
|
83
113
|
none: false
|
|
84
114
|
requirements:
|
|
85
115
|
- - ! '>='
|
|
@@ -87,54 +117,79 @@ dependencies:
|
|
|
87
117
|
version: '0'
|
|
88
118
|
type: :runtime
|
|
89
119
|
prerelease: false
|
|
90
|
-
version_requirements:
|
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
none: false
|
|
122
|
+
requirements:
|
|
123
|
+
- - ! '>='
|
|
124
|
+
- !ruby/object:Gem::Version
|
|
125
|
+
version: '0'
|
|
91
126
|
- !ruby/object:Gem::Dependency
|
|
92
127
|
name: database_cleaner
|
|
93
|
-
requirement:
|
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
|
94
129
|
none: false
|
|
95
130
|
requirements:
|
|
96
|
-
- - =
|
|
131
|
+
- - '='
|
|
97
132
|
- !ruby/object:Gem::Version
|
|
98
133
|
version: 0.7.2
|
|
99
134
|
type: :development
|
|
100
135
|
prerelease: false
|
|
101
|
-
version_requirements:
|
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
137
|
+
none: false
|
|
138
|
+
requirements:
|
|
139
|
+
- - '='
|
|
140
|
+
- !ruby/object:Gem::Version
|
|
141
|
+
version: 0.7.2
|
|
102
142
|
- !ruby/object:Gem::Dependency
|
|
103
143
|
name: factory_girl
|
|
104
|
-
requirement:
|
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
|
105
145
|
none: false
|
|
106
146
|
requirements:
|
|
107
|
-
- - =
|
|
147
|
+
- - '='
|
|
108
148
|
- !ruby/object:Gem::Version
|
|
109
149
|
version: 3.3.0
|
|
110
150
|
type: :development
|
|
111
151
|
prerelease: false
|
|
112
|
-
version_requirements:
|
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
153
|
+
none: false
|
|
154
|
+
requirements:
|
|
155
|
+
- - '='
|
|
156
|
+
- !ruby/object:Gem::Version
|
|
157
|
+
version: 3.3.0
|
|
113
158
|
- !ruby/object:Gem::Dependency
|
|
114
159
|
name: gem_publisher
|
|
115
|
-
requirement:
|
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
|
116
161
|
none: false
|
|
117
162
|
requirements:
|
|
118
|
-
- - =
|
|
163
|
+
- - '='
|
|
119
164
|
- !ruby/object:Gem::Version
|
|
120
165
|
version: 1.2.0
|
|
121
166
|
type: :development
|
|
122
167
|
prerelease: false
|
|
123
|
-
version_requirements:
|
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
169
|
+
none: false
|
|
170
|
+
requirements:
|
|
171
|
+
- - '='
|
|
172
|
+
- !ruby/object:Gem::Version
|
|
173
|
+
version: 1.2.0
|
|
124
174
|
- !ruby/object:Gem::Dependency
|
|
125
175
|
name: mocha
|
|
126
|
-
requirement:
|
|
176
|
+
requirement: !ruby/object:Gem::Requirement
|
|
127
177
|
none: false
|
|
128
178
|
requirements:
|
|
129
|
-
- - =
|
|
179
|
+
- - '='
|
|
130
180
|
- !ruby/object:Gem::Version
|
|
131
181
|
version: 0.13.3
|
|
132
182
|
type: :development
|
|
133
183
|
prerelease: false
|
|
134
|
-
version_requirements:
|
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
185
|
+
none: false
|
|
186
|
+
requirements:
|
|
187
|
+
- - '='
|
|
188
|
+
- !ruby/object:Gem::Version
|
|
189
|
+
version: 0.13.3
|
|
135
190
|
- !ruby/object:Gem::Dependency
|
|
136
191
|
name: multi_json
|
|
137
|
-
requirement:
|
|
192
|
+
requirement: !ruby/object:Gem::Requirement
|
|
138
193
|
none: false
|
|
139
194
|
requirements:
|
|
140
195
|
- - ! '>='
|
|
@@ -142,54 +197,79 @@ dependencies:
|
|
|
142
197
|
version: '0'
|
|
143
198
|
type: :development
|
|
144
199
|
prerelease: false
|
|
145
|
-
version_requirements:
|
|
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: rake
|
|
148
|
-
requirement:
|
|
208
|
+
requirement: !ruby/object:Gem::Requirement
|
|
149
209
|
none: false
|
|
150
210
|
requirements:
|
|
151
|
-
- - =
|
|
211
|
+
- - '='
|
|
152
212
|
- !ruby/object:Gem::Version
|
|
153
213
|
version: 0.9.2.2
|
|
154
214
|
type: :development
|
|
155
215
|
prerelease: false
|
|
156
|
-
version_requirements:
|
|
216
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
217
|
+
none: false
|
|
218
|
+
requirements:
|
|
219
|
+
- - '='
|
|
220
|
+
- !ruby/object:Gem::Version
|
|
221
|
+
version: 0.9.2.2
|
|
157
222
|
- !ruby/object:Gem::Dependency
|
|
158
223
|
name: webmock
|
|
159
|
-
requirement:
|
|
224
|
+
requirement: !ruby/object:Gem::Requirement
|
|
160
225
|
none: false
|
|
161
226
|
requirements:
|
|
162
|
-
- - =
|
|
227
|
+
- - '='
|
|
163
228
|
- !ruby/object:Gem::Version
|
|
164
229
|
version: 1.8.7
|
|
165
230
|
type: :development
|
|
166
231
|
prerelease: false
|
|
167
|
-
version_requirements:
|
|
232
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
233
|
+
none: false
|
|
234
|
+
requirements:
|
|
235
|
+
- - '='
|
|
236
|
+
- !ruby/object:Gem::Version
|
|
237
|
+
version: 1.8.7
|
|
168
238
|
- !ruby/object:Gem::Dependency
|
|
169
239
|
name: shoulda-context
|
|
170
|
-
requirement:
|
|
240
|
+
requirement: !ruby/object:Gem::Requirement
|
|
171
241
|
none: false
|
|
172
242
|
requirements:
|
|
173
|
-
- - =
|
|
243
|
+
- - '='
|
|
174
244
|
- !ruby/object:Gem::Version
|
|
175
245
|
version: 1.0.0
|
|
176
246
|
type: :development
|
|
177
247
|
prerelease: false
|
|
178
|
-
version_requirements:
|
|
248
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
249
|
+
none: false
|
|
250
|
+
requirements:
|
|
251
|
+
- - '='
|
|
252
|
+
- !ruby/object:Gem::Version
|
|
253
|
+
version: 1.0.0
|
|
179
254
|
- !ruby/object:Gem::Dependency
|
|
180
255
|
name: timecop
|
|
181
|
-
requirement:
|
|
256
|
+
requirement: !ruby/object:Gem::Requirement
|
|
182
257
|
none: false
|
|
183
258
|
requirements:
|
|
184
|
-
- - =
|
|
259
|
+
- - '='
|
|
185
260
|
- !ruby/object:Gem::Version
|
|
186
261
|
version: 0.5.9.2
|
|
187
262
|
type: :development
|
|
188
263
|
prerelease: false
|
|
189
|
-
version_requirements:
|
|
264
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
265
|
+
none: false
|
|
266
|
+
requirements:
|
|
267
|
+
- - '='
|
|
268
|
+
- !ruby/object:Gem::Version
|
|
269
|
+
version: 0.5.9.2
|
|
190
270
|
- !ruby/object:Gem::Dependency
|
|
191
271
|
name: debugger
|
|
192
|
-
requirement:
|
|
272
|
+
requirement: !ruby/object:Gem::Requirement
|
|
193
273
|
none: false
|
|
194
274
|
requirements:
|
|
195
275
|
- - ! '>='
|
|
@@ -197,10 +277,15 @@ dependencies:
|
|
|
197
277
|
version: '0'
|
|
198
278
|
type: :development
|
|
199
279
|
prerelease: false
|
|
200
|
-
version_requirements:
|
|
280
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
281
|
+
none: false
|
|
282
|
+
requirements:
|
|
283
|
+
- - ! '>='
|
|
284
|
+
- !ruby/object:Gem::Version
|
|
285
|
+
version: '0'
|
|
201
286
|
- !ruby/object:Gem::Dependency
|
|
202
287
|
name: rack
|
|
203
|
-
requirement:
|
|
288
|
+
requirement: !ruby/object:Gem::Requirement
|
|
204
289
|
none: false
|
|
205
290
|
requirements:
|
|
206
291
|
- - ~>
|
|
@@ -208,18 +293,28 @@ dependencies:
|
|
|
208
293
|
version: 1.4.4
|
|
209
294
|
type: :development
|
|
210
295
|
prerelease: false
|
|
211
|
-
version_requirements:
|
|
296
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
297
|
+
none: false
|
|
298
|
+
requirements:
|
|
299
|
+
- - ~>
|
|
300
|
+
- !ruby/object:Gem::Version
|
|
301
|
+
version: 1.4.4
|
|
212
302
|
- !ruby/object:Gem::Dependency
|
|
213
303
|
name: rails
|
|
214
|
-
requirement:
|
|
304
|
+
requirement: !ruby/object:Gem::Requirement
|
|
215
305
|
none: false
|
|
216
306
|
requirements:
|
|
217
|
-
- - =
|
|
307
|
+
- - '='
|
|
218
308
|
- !ruby/object:Gem::Version
|
|
219
309
|
version: 3.2.17
|
|
220
310
|
type: :development
|
|
221
311
|
prerelease: false
|
|
222
|
-
version_requirements:
|
|
312
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
313
|
+
none: false
|
|
314
|
+
requirements:
|
|
315
|
+
- - '='
|
|
316
|
+
- !ruby/object:Gem::Version
|
|
317
|
+
version: 3.2.17
|
|
223
318
|
description: Shared models for Panopticon and Publisher
|
|
224
319
|
email:
|
|
225
320
|
- pbattley@gmail.com
|
|
@@ -380,7 +475,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
380
475
|
version: '0'
|
|
381
476
|
segments:
|
|
382
477
|
- 0
|
|
383
|
-
hash:
|
|
478
|
+
hash: 4146822323312464372
|
|
384
479
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
385
480
|
none: false
|
|
386
481
|
requirements:
|
|
@@ -389,10 +484,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
389
484
|
version: '0'
|
|
390
485
|
segments:
|
|
391
486
|
- 0
|
|
392
|
-
hash:
|
|
487
|
+
hash: 4146822323312464372
|
|
393
488
|
requirements: []
|
|
394
489
|
rubyforge_project:
|
|
395
|
-
rubygems_version: 1.8.
|
|
490
|
+
rubygems_version: 1.8.23
|
|
396
491
|
signing_key:
|
|
397
492
|
specification_version: 3
|
|
398
493
|
summary: Shared models for Panopticon and Publisher, as a Rails Engine
|