hoodoo 1.3.0 → 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/hoodoo/active/active_record/uuid.rb +1 -18
- data/lib/hoodoo/services/middleware/exception_reporting/base_reporter.rb +1 -1
- data/lib/hoodoo/version.rb +1 -1
- data/spec/active/active_record/manually_dated_spec.rb +1 -1
- data/spec/active/active_record/uuid_spec.rb +11 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MmVkNzQ3ZmU3YWQ3ZjY5YzFhOTQzOWQ3ODgwYWYwNGI5NDRhOGM2YQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZTM4ZDc5NWM5OTVjZjI4ZWQ3M2E5M2Y5YzVmNGYyMzcwYmVhMjczNg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ODEwNjVhMDM1ODM0ZGUyMWVmMjUxMDQzZWU2NDY1YTFlNzg4YjI2MDYxNWFk
|
10
|
+
NmI1YzU4ZmVjYzFkODNmMjhjNjYxNTRhNzc4ZDAwZDNhMmUzYzAyOTE4Yjlm
|
11
|
+
MDNkYjI3MzJjMWUzYzU5MDQ5NzhiYWVkZDJkN2I2YTExOWVmNDA=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NjNhNmY1YTk4MjYxNTk2MTUxNDFiMjIyMTEyODM0MzEzMDU4ZDBkMGU3ODFj
|
14
|
+
ZWU0NzYwOTUyNDVmNDZlNjAyZjc4N2IwMDk4ZmE5ZWU2NjBmY2RhNWY4YjI2
|
15
|
+
MGQ1OWExN2Q1OWRkYTY5ZDQxYzY4ODIxNjJkMzM2ZDQzNjA1NzQ=
|
@@ -77,26 +77,9 @@ module Hoodoo
|
|
77
77
|
{
|
78
78
|
:uuid => true,
|
79
79
|
:presence => true,
|
80
|
-
:uniqueness => true
|
80
|
+
:uniqueness => true
|
81
81
|
}
|
82
82
|
)
|
83
|
-
|
84
|
-
# We also have to remove ActiveRecord's default unscoped uniqueness
|
85
|
-
# check on 'id'. We've added an equivalent validator above.
|
86
|
-
#
|
87
|
-
# Sadly there is no API for this even as late as ActiveRecord 4.2,
|
88
|
-
# so we have to resort to fragile hackery.
|
89
|
-
#
|
90
|
-
model._validators.reject!() do | key, ignored |
|
91
|
-
key == :id
|
92
|
-
end
|
93
|
-
|
94
|
-
id_validation_callback = model._validate_callbacks.find do | callback |
|
95
|
-
callback.raw_filter.is_a?( ::ActiveRecord::Validations::UniquenessValidator ) &&
|
96
|
-
callback.raw_filter.attributes == [ :id ]
|
97
|
-
end
|
98
|
-
|
99
|
-
model._validate_callbacks.delete( id_validation_callback )
|
100
83
|
end
|
101
84
|
|
102
85
|
end
|
@@ -142,7 +142,7 @@ module Hoodoo; module Services
|
|
142
142
|
protected
|
143
143
|
|
144
144
|
# When passed a request context, extracts information that can be given
|
145
|
-
# as "user data" (or similar) to
|
145
|
+
# as "user data" (or similar) to an exception reporting endpoint, if it
|
146
146
|
# supports such a concept.
|
147
147
|
#
|
148
148
|
# +context+:: Hoodoo::Services::Context instance describing an
|
data/lib/hoodoo/version.rb
CHANGED
@@ -102,7 +102,7 @@ describe Hoodoo::ActiveRecord::ManuallyDated do
|
|
102
102
|
[ @uuid_a, 'six', @now - 5.hours, @now - 1.hour, @eot ]
|
103
103
|
].each do | row_data |
|
104
104
|
RSpecModelManualDateTest.new( {
|
105
|
-
:
|
105
|
+
:uuid => row_data[ 0 ],
|
106
106
|
:data => row_data[ 1 ],
|
107
107
|
:created_at => row_data[ 2 ],
|
108
108
|
:updated_at => row_data[ 2 ],
|
@@ -69,4 +69,15 @@ describe Hoodoo::ActiveRecord::UUID do
|
|
69
69
|
m.reload
|
70
70
|
expect( m.id ).to eq( id )
|
71
71
|
end
|
72
|
+
|
73
|
+
it 'should not allow a duplicate UUID at the application level' do
|
74
|
+
m = RSpecModelUUIDTest.new
|
75
|
+
m.save
|
76
|
+
|
77
|
+
n = RSpecModelUUIDTest.new
|
78
|
+
n.id = m.id
|
79
|
+
|
80
|
+
expect( n ).to be_invalid
|
81
|
+
expect( n.errors[ :id ] ).to eq( [ 'has already been taken' ] )
|
82
|
+
end
|
72
83
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hoodoo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.3.
|
4
|
+
version: 1.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Loyalty New Zealand
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: kgio
|