acts_as_paranoid 0.7.2 → 0.8.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.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_as_paranoid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zachary Scott
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-04-16 00:00:00.000000000 Z
13
+ date: 2022-04-22 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activerecord
@@ -21,7 +21,7 @@ dependencies:
21
21
  version: '5.2'
22
22
  - - "<"
23
23
  - !ruby/object:Gem::Version
24
- version: '7.0'
24
+ version: '7.1'
25
25
  type: :runtime
26
26
  prerelease: false
27
27
  version_requirements: !ruby/object:Gem::Requirement
@@ -31,7 +31,7 @@ dependencies:
31
31
  version: '5.2'
32
32
  - - "<"
33
33
  - !ruby/object:Gem::Version
34
- version: '7.0'
34
+ version: '7.1'
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: activesupport
37
37
  requirement: !ruby/object:Gem::Requirement
@@ -41,7 +41,7 @@ dependencies:
41
41
  version: '5.2'
42
42
  - - "<"
43
43
  - !ruby/object:Gem::Version
44
- version: '7.0'
44
+ version: '7.1'
45
45
  type: :runtime
46
46
  prerelease: false
47
47
  version_requirements: !ruby/object:Gem::Requirement
@@ -51,27 +51,21 @@ dependencies:
51
51
  version: '5.2'
52
52
  - - "<"
53
53
  - !ruby/object:Gem::Version
54
- version: '7.0'
54
+ version: '7.1'
55
55
  - !ruby/object:Gem::Dependency
56
- name: bundler
56
+ name: appraisal
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '1.5'
62
- - - "<"
59
+ - - "~>"
63
60
  - !ruby/object:Gem::Version
64
- version: '3.0'
61
+ version: '2.3'
65
62
  type: :development
66
63
  prerelease: false
67
64
  version_requirements: !ruby/object:Gem::Requirement
68
65
  requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- version: '1.5'
72
- - - "<"
66
+ - - "~>"
73
67
  - !ruby/object:Gem::Version
74
- version: '3.0'
68
+ version: '2.3'
75
69
  - !ruby/object:Gem::Dependency
76
70
  name: minitest
77
71
  requirement: !ruby/object:Gem::Requirement
@@ -92,90 +86,112 @@ dependencies:
92
86
  requirements:
93
87
  - - "~>"
94
88
  - !ruby/object:Gem::Version
95
- version: 1.2.1
89
+ version: '1.3'
96
90
  type: :development
97
91
  prerelease: false
98
92
  version_requirements: !ruby/object:Gem::Requirement
99
93
  requirements:
100
94
  - - "~>"
101
95
  - !ruby/object:Gem::Version
102
- version: 1.2.1
96
+ version: '1.3'
103
97
  - !ruby/object:Gem::Dependency
104
98
  name: pry
105
99
  requirement: !ruby/object:Gem::Requirement
106
100
  requirements:
107
- - - ">="
101
+ - - "~>"
108
102
  - !ruby/object:Gem::Version
109
- version: '0'
103
+ version: 0.14.1
110
104
  type: :development
111
105
  prerelease: false
112
106
  version_requirements: !ruby/object:Gem::Requirement
113
107
  requirements:
114
- - - ">="
108
+ - - "~>"
115
109
  - !ruby/object:Gem::Version
116
- version: '0'
110
+ version: 0.14.1
117
111
  - !ruby/object:Gem::Dependency
118
112
  name: rake
119
113
  requirement: !ruby/object:Gem::Requirement
120
114
  requirements:
121
- - - ">="
115
+ - - "~>"
122
116
  - !ruby/object:Gem::Version
123
- version: '0'
117
+ version: '13.0'
124
118
  type: :development
125
119
  prerelease: false
126
120
  version_requirements: !ruby/object:Gem::Requirement
127
121
  requirements:
128
- - - ">="
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '13.0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rake-manifest
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 0.2.0
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
129
137
  - !ruby/object:Gem::Version
130
- version: '0'
138
+ version: 0.2.0
131
139
  - !ruby/object:Gem::Dependency
132
140
  name: rdoc
133
141
  requirement: !ruby/object:Gem::Requirement
134
142
  requirements:
135
- - - ">="
143
+ - - "~>"
136
144
  - !ruby/object:Gem::Version
137
- version: '0'
145
+ version: '6.3'
138
146
  type: :development
139
147
  prerelease: false
140
148
  version_requirements: !ruby/object:Gem::Requirement
141
149
  requirements:
142
- - - ">="
150
+ - - "~>"
143
151
  - !ruby/object:Gem::Version
144
- version: '0'
152
+ version: '6.3'
145
153
  - !ruby/object:Gem::Dependency
146
154
  name: rubocop
147
155
  requirement: !ruby/object:Gem::Requirement
148
156
  requirements:
149
157
  - - "~>"
150
158
  - !ruby/object:Gem::Version
151
- version: 1.12.0
159
+ version: '1.25'
152
160
  type: :development
153
161
  prerelease: false
154
162
  version_requirements: !ruby/object:Gem::Requirement
155
163
  requirements:
156
164
  - - "~>"
157
165
  - !ruby/object:Gem::Version
158
- version: 1.12.0
166
+ version: '1.25'
159
167
  - !ruby/object:Gem::Dependency
160
- name: simplecov
168
+ name: rubocop-minitest
161
169
  requirement: !ruby/object:Gem::Requirement
162
170
  requirements:
163
- - - ">="
164
- - !ruby/object:Gem::Version
165
- version: 0.18.1
166
- - - "<"
171
+ - - "~>"
167
172
  - !ruby/object:Gem::Version
168
- version: 0.22.0
173
+ version: 0.19.0
169
174
  type: :development
170
175
  prerelease: false
171
176
  version_requirements: !ruby/object:Gem::Requirement
172
177
  requirements:
173
- - - ">="
178
+ - - "~>"
174
179
  - !ruby/object:Gem::Version
175
- version: 0.18.1
176
- - - "<"
180
+ version: 0.19.0
181
+ - !ruby/object:Gem::Dependency
182
+ name: simplecov
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: 0.21.2
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
177
193
  - !ruby/object:Gem::Version
178
- version: 0.22.0
194
+ version: 0.21.2
179
195
  description: Check the home page for more in-depth information.
180
196
  email:
181
197
  - e@zzak.io
@@ -188,22 +204,17 @@ files:
188
204
  - LICENSE
189
205
  - README.md
190
206
  - lib/acts_as_paranoid.rb
207
+ - lib/acts_as_paranoid/association_reflection.rb
191
208
  - lib/acts_as_paranoid/associations.rb
192
209
  - lib/acts_as_paranoid/core.rb
193
210
  - lib/acts_as_paranoid/relation.rb
194
211
  - lib/acts_as_paranoid/validations.rb
195
212
  - lib/acts_as_paranoid/version.rb
196
- - test/test_associations.rb
197
- - test/test_core.rb
198
- - test/test_default_scopes.rb
199
- - test/test_helper.rb
200
- - test/test_inheritance.rb
201
- - test/test_relations.rb
202
- - test/test_validations.rb
203
213
  homepage: https://github.com/ActsAsParanoid/acts_as_paranoid
204
214
  licenses:
205
215
  - MIT
206
- metadata: {}
216
+ metadata:
217
+ rubygems_mfa_required: 'true'
207
218
  post_install_message:
208
219
  rdoc_options: []
209
220
  require_paths:
@@ -212,23 +223,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
212
223
  requirements:
213
224
  - - ">="
214
225
  - !ruby/object:Gem::Version
215
- version: 2.4.0
226
+ version: 2.6.0
216
227
  required_rubygems_version: !ruby/object:Gem::Requirement
217
228
  requirements:
218
229
  - - ">="
219
230
  - !ruby/object:Gem::Version
220
231
  version: '0'
221
232
  requirements: []
222
- rubygems_version: 3.2.3
233
+ rubygems_version: 3.3.7
223
234
  signing_key:
224
235
  specification_version: 4
225
236
  summary: Active Record plugin which allows you to hide and restore records without
226
237
  actually deleting them.
227
- test_files:
228
- - test/test_associations.rb
229
- - test/test_core.rb
230
- - test/test_default_scopes.rb
231
- - test/test_helper.rb
232
- - test/test_inheritance.rb
233
- - test/test_relations.rb
234
- - test/test_validations.rb
238
+ test_files: []
@@ -1,358 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "test_helper"
4
-
5
- class AssociationsTest < ParanoidBaseTest
6
- def test_removal_with_destroy_associations
7
- paranoid_company = ParanoidDestroyCompany.create! name: "ParanoidDestroyCompany #1"
8
- paranoid_company.paranoid_products.create! name: "ParanoidProduct #1"
9
-
10
- assert_equal 1, ParanoidDestroyCompany.count
11
- assert_equal 1, ParanoidProduct.count
12
-
13
- ParanoidDestroyCompany.first.destroy
14
- assert_equal 0, ParanoidDestroyCompany.count
15
- assert_equal 0, ParanoidProduct.count
16
- assert_equal 1, ParanoidDestroyCompany.with_deleted.count
17
- assert_equal 1, ParanoidProduct.with_deleted.count
18
-
19
- ParanoidDestroyCompany.with_deleted.first.destroy
20
- assert_equal 0, ParanoidDestroyCompany.count
21
- assert_equal 0, ParanoidProduct.count
22
- assert_equal 0, ParanoidDestroyCompany.with_deleted.count
23
- assert_equal 0, ParanoidProduct.with_deleted.count
24
- end
25
-
26
- def test_removal_with_delete_all_associations
27
- paranoid_company = ParanoidDeleteCompany.create! name: "ParanoidDestroyCompany #1"
28
- paranoid_company.paranoid_products.create! name: "ParanoidProduct #2"
29
-
30
- assert_equal 1, ParanoidDeleteCompany.count
31
- assert_equal 1, ParanoidProduct.count
32
-
33
- ParanoidDeleteCompany.first.destroy
34
- assert_equal 0, ParanoidDeleteCompany.count
35
- assert_equal 0, ParanoidProduct.count
36
- assert_equal 1, ParanoidDeleteCompany.with_deleted.count
37
- assert_equal 1, ParanoidProduct.with_deleted.count
38
-
39
- ParanoidDeleteCompany.with_deleted.first.destroy
40
- assert_equal 0, ParanoidDeleteCompany.count
41
- assert_equal 0, ParanoidProduct.count
42
- assert_equal 0, ParanoidDeleteCompany.with_deleted.count
43
- assert_equal 0, ParanoidProduct.with_deleted.count
44
- end
45
-
46
- def test_belongs_to_with_scope_option
47
- paranoid_has_many_dependant = ParanoidHasManyDependant.new
48
-
49
- expected_includes_values = ParanoidTime.includes(:not_paranoid).includes_values
50
- includes_values = paranoid_has_many_dependant
51
- .association(:paranoid_time_with_scope).scope.includes_values
52
-
53
- assert_equal expected_includes_values, includes_values
54
-
55
- paranoid_time = ParanoidTime.create(name: "not-hello")
56
- paranoid_has_many_dependant.paranoid_time = paranoid_time
57
- paranoid_has_many_dependant.save!
58
-
59
- assert_nil paranoid_has_many_dependant.paranoid_time_with_scope
60
-
61
- paranoid_time.update(name: "hello")
62
-
63
- paranoid_has_many_dependant.reload
64
-
65
- assert_equal paranoid_time, paranoid_has_many_dependant.paranoid_time_with_scope
66
-
67
- paranoid_time.destroy
68
-
69
- paranoid_has_many_dependant.reload
70
-
71
- assert_nil paranoid_has_many_dependant.paranoid_time_with_scope
72
- end
73
-
74
- def test_belongs_to_with_scope_and_deleted_option
75
- paranoid_has_many_dependant = ParanoidHasManyDependant.new
76
- includes_values = ParanoidTime.includes(:not_paranoid).includes_values
77
-
78
- assert_equal includes_values, paranoid_has_many_dependant
79
- .association(:paranoid_time_with_scope_with_deleted).scope.includes_values
80
-
81
- paranoid_time = ParanoidTime.create(name: "not-hello")
82
- paranoid_has_many_dependant.paranoid_time = paranoid_time
83
- paranoid_has_many_dependant.save!
84
-
85
- assert_nil paranoid_has_many_dependant.paranoid_time_with_scope_with_deleted
86
-
87
- paranoid_time.update(name: "hello")
88
- paranoid_has_many_dependant.reload
89
-
90
- assert_equal paranoid_time, paranoid_has_many_dependant
91
- .paranoid_time_with_scope_with_deleted
92
-
93
- paranoid_time.destroy
94
- paranoid_has_many_dependant.reload
95
-
96
- assert_equal paranoid_time, paranoid_has_many_dependant
97
- .paranoid_time_with_scope_with_deleted
98
- end
99
-
100
- def test_belongs_to_with_deleted
101
- paranoid_time = ParanoidTime.first
102
- paranoid_has_many_dependant = paranoid_time.paranoid_has_many_dependants
103
- .create(name: "dependant!")
104
-
105
- assert_equal paranoid_time, paranoid_has_many_dependant.paranoid_time
106
- assert_equal paranoid_time, paranoid_has_many_dependant.paranoid_time_with_deleted
107
-
108
- paranoid_time.destroy
109
- paranoid_has_many_dependant.reload
110
-
111
- assert_nil paranoid_has_many_dependant.paranoid_time
112
- assert_equal paranoid_time, paranoid_has_many_dependant.paranoid_time_with_deleted
113
- end
114
-
115
- def test_belongs_to_polymorphic_with_deleted
116
- paranoid_time = ParanoidTime.first
117
- paranoid_has_many_dependant = ParanoidHasManyDependant
118
- .create!(name: "dependant!", paranoid_time_polymorphic_with_deleted: paranoid_time)
119
-
120
- assert_equal paranoid_time, paranoid_has_many_dependant.paranoid_time
121
- assert_equal paranoid_time, paranoid_has_many_dependant
122
- .paranoid_time_polymorphic_with_deleted
123
-
124
- paranoid_time.destroy
125
-
126
- assert_nil paranoid_has_many_dependant.reload.paranoid_time
127
- assert_equal paranoid_time, paranoid_has_many_dependant
128
- .reload.paranoid_time_polymorphic_with_deleted
129
- end
130
-
131
- def test_belongs_to_nil_polymorphic_with_deleted
132
- paranoid_time = ParanoidTime.first
133
- paranoid_has_many_dependant =
134
- ParanoidHasManyDependant.create!(name: "dependant!",
135
- paranoid_time_polymorphic_with_deleted: nil)
136
-
137
- assert_nil paranoid_has_many_dependant.paranoid_time
138
- assert_nil paranoid_has_many_dependant.paranoid_time_polymorphic_with_deleted
139
-
140
- paranoid_time.destroy
141
-
142
- assert_nil paranoid_has_many_dependant.reload.paranoid_time
143
- assert_nil paranoid_has_many_dependant.reload.paranoid_time_polymorphic_with_deleted
144
- end
145
-
146
- def test_belongs_to_options
147
- paranoid_time = ParanoidHasManyDependant.reflections
148
- .with_indifferent_access[:paranoid_time]
149
- assert_equal :belongs_to, paranoid_time.macro
150
- assert_nil paranoid_time.options[:with_deleted]
151
- end
152
-
153
- def test_belongs_to_with_deleted_options
154
- paranoid_time_with_deleted =
155
- ParanoidHasManyDependant.reflections
156
- .with_indifferent_access[:paranoid_time_with_deleted]
157
- assert_equal :belongs_to, paranoid_time_with_deleted.macro
158
- assert paranoid_time_with_deleted.options[:with_deleted]
159
- end
160
-
161
- def test_belongs_to_polymorphic_with_deleted_options
162
- paranoid_time_polymorphic_with_deleted = ParanoidHasManyDependant.reflections
163
- .with_indifferent_access[:paranoid_time_polymorphic_with_deleted]
164
- assert_equal :belongs_to, paranoid_time_polymorphic_with_deleted.macro
165
- assert paranoid_time_polymorphic_with_deleted.options[:with_deleted]
166
- end
167
-
168
- def test_only_find_associated_records_when_finding_with_paranoid_deleted
169
- parent = ParanoidBelongsDependant.create
170
- child = ParanoidHasManyDependant.create
171
- parent.paranoid_has_many_dependants << child
172
-
173
- unrelated_parent = ParanoidBelongsDependant.create
174
- unrelated_child = ParanoidHasManyDependant.create
175
- unrelated_parent.paranoid_has_many_dependants << unrelated_child
176
-
177
- child.destroy
178
- assert_paranoid_deletion(child)
179
-
180
- parent.reload
181
-
182
- assert_equal [], parent.paranoid_has_many_dependants.to_a
183
- assert_equal [child], parent.paranoid_has_many_dependants.with_deleted.to_a
184
- end
185
-
186
- def test_join_with_model_with_deleted
187
- obj = ParanoidHasManyDependant.create(paranoid_time: ParanoidTime.create)
188
- assert_not_nil obj.paranoid_time
189
- assert_not_nil obj.paranoid_time_with_deleted
190
-
191
- obj.paranoid_time.destroy
192
- obj.reload
193
-
194
- assert_nil obj.paranoid_time
195
- assert_not_nil obj.paranoid_time_with_deleted
196
-
197
- # Note that obj is destroyed because of dependent: :destroy in ParanoidTime
198
- assert obj.destroyed?
199
-
200
- assert_empty ParanoidHasManyDependant.with_deleted.joins(:paranoid_time)
201
- assert_equal [obj],
202
- ParanoidHasManyDependant.with_deleted.joins(:paranoid_time_with_deleted)
203
- end
204
-
205
- def test_includes_with_deleted
206
- paranoid_time = ParanoidTime.first
207
- paranoid_time.paranoid_has_many_dependants.create(name: "dependant!")
208
-
209
- paranoid_time.destroy
210
-
211
- ParanoidHasManyDependant.with_deleted
212
- .includes(:paranoid_time_with_deleted).each do |hasmany|
213
- assert_not_nil hasmany.paranoid_time_with_deleted
214
- end
215
- end
216
-
217
- def test_includes_with_deleted_with_polymorphic_parent
218
- not_paranoid_parent = NotParanoidHasManyAsParent.create(name: "not paranoid parent")
219
- paranoid_parent = ParanoidHasManyAsParent.create(name: "paranoid parent")
220
- ParanoidBelongsToPolymorphic.create(name: "belongs_to", parent: not_paranoid_parent)
221
- ParanoidBelongsToPolymorphic.create(name: "belongs_to", parent: paranoid_parent)
222
-
223
- paranoid_parent.destroy
224
-
225
- ParanoidBelongsToPolymorphic.with_deleted.includes(:parent).each do |hasmany|
226
- assert_not_nil hasmany.parent
227
- end
228
- end
229
-
230
- def test_cannot_find_a_paranoid_deleted_many_many_association
231
- left = ParanoidManyManyParentLeft.create
232
- right = ParanoidManyManyParentRight.create
233
- left.paranoid_many_many_parent_rights << right
234
-
235
- left.paranoid_many_many_parent_rights.delete(right)
236
-
237
- left.reload
238
-
239
- assert_equal [], left.paranoid_many_many_children, "Linking objects not deleted"
240
- assert_equal [], left.paranoid_many_many_parent_rights,
241
- "Associated objects not unlinked"
242
- assert_equal right, ParanoidManyManyParentRight.find(right.id),
243
- "Associated object deleted"
244
- end
245
-
246
- def test_cannot_find_a_paranoid_destroyed_many_many_association
247
- left = ParanoidManyManyParentLeft.create
248
- right = ParanoidManyManyParentRight.create
249
- left.paranoid_many_many_parent_rights << right
250
-
251
- left.paranoid_many_many_parent_rights.destroy(right)
252
-
253
- left.reload
254
-
255
- assert_equal [], left.paranoid_many_many_children, "Linking objects not deleted"
256
- assert_equal [], left.paranoid_many_many_parent_rights,
257
- "Associated objects not unlinked"
258
- assert_equal right, ParanoidManyManyParentRight.find(right.id),
259
- "Associated object deleted"
260
- end
261
-
262
- def test_cannot_find_a_has_many_through_object_when_its_linking_object_is_soft_destroyed
263
- left = ParanoidManyManyParentLeft.create
264
- right = ParanoidManyManyParentRight.create
265
- left.paranoid_many_many_parent_rights << right
266
-
267
- child = left.paranoid_many_many_children.first
268
-
269
- child.destroy
270
-
271
- left.reload
272
-
273
- assert_equal [], left.paranoid_many_many_parent_rights, "Associated objects not deleted"
274
- end
275
-
276
- def test_cannot_find_a_paranoid_deleted_model
277
- model = ParanoidBelongsDependant.create
278
- model.destroy
279
-
280
- assert_raises ActiveRecord::RecordNotFound do
281
- ParanoidBelongsDependant.find(model.id)
282
- end
283
- end
284
-
285
- def test_bidirectional_has_many_through_association_clear_is_paranoid
286
- left = ParanoidManyManyParentLeft.create
287
- right = ParanoidManyManyParentRight.create
288
- left.paranoid_many_many_parent_rights << right
289
-
290
- child = left.paranoid_many_many_children.first
291
- assert_equal left, child.paranoid_many_many_parent_left,
292
- "Child's left parent is incorrect"
293
- assert_equal right, child.paranoid_many_many_parent_right,
294
- "Child's right parent is incorrect"
295
-
296
- left.paranoid_many_many_parent_rights.clear
297
-
298
- assert_paranoid_deletion(child)
299
- end
300
-
301
- def test_bidirectional_has_many_through_association_destroy_is_paranoid
302
- left = ParanoidManyManyParentLeft.create
303
- right = ParanoidManyManyParentRight.create
304
- left.paranoid_many_many_parent_rights << right
305
-
306
- child = left.paranoid_many_many_children.first
307
- assert_equal left, child.paranoid_many_many_parent_left,
308
- "Child's left parent is incorrect"
309
- assert_equal right, child.paranoid_many_many_parent_right,
310
- "Child's right parent is incorrect"
311
-
312
- left.paranoid_many_many_parent_rights.destroy(right)
313
-
314
- assert_paranoid_deletion(child)
315
- end
316
-
317
- def test_bidirectional_has_many_through_association_delete_is_paranoid
318
- left = ParanoidManyManyParentLeft.create
319
- right = ParanoidManyManyParentRight.create
320
- left.paranoid_many_many_parent_rights << right
321
-
322
- child = left.paranoid_many_many_children.first
323
- assert_equal left, child.paranoid_many_many_parent_left,
324
- "Child's left parent is incorrect"
325
- assert_equal right, child.paranoid_many_many_parent_right,
326
- "Child's right parent is incorrect"
327
-
328
- left.paranoid_many_many_parent_rights.delete(right)
329
-
330
- assert_paranoid_deletion(child)
331
- end
332
-
333
- def test_belongs_to_on_normal_model_is_paranoid
334
- not_paranoid = HasOneNotParanoid.create
335
- not_paranoid.paranoid_time = ParanoidTime.create
336
-
337
- assert not_paranoid.save
338
- assert_not_nil not_paranoid.paranoid_time
339
- end
340
-
341
- def test_double_belongs_to_with_deleted
342
- not_paranoid = DoubleHasOneNotParanoid.create
343
- not_paranoid.paranoid_time = ParanoidTime.create
344
-
345
- assert not_paranoid.save
346
- assert_not_nil not_paranoid.paranoid_time
347
- end
348
-
349
- def test_mass_assignment_of_paranoid_column_enabled
350
- if Gem.loaded_specs["activerecord"].version >= Gem::Version.new("5.2.0")
351
- skip "Creation as deleted is not supported with Rails >= 5.2"
352
- end
353
- now = Time.now
354
- record = ParanoidTime.create! name: "Foo", deleted_at: now
355
- assert_equal "Foo", record.name
356
- assert_equal now, record.deleted_at
357
- end
358
- end