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 CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- N2VjMWU3NjI1YmZmODQ1NDQ3OTYxMTg1MTk3YzRhNmQzM2U3YzZhNw==
4
+ MmVkNzQ3ZmU3YWQ3ZjY5YzFhOTQzOWQ3ODgwYWYwNGI5NDRhOGM2YQ==
5
5
  data.tar.gz: !binary |-
6
- NzFkZjIyZTk0YmUzNTVhY2IxZWMxMThiMWU0ZmZiMzhmOGNkYjk5Yw==
6
+ ZTM4ZDc5NWM5OTVjZjI4ZWQ3M2E5M2Y5YzVmNGYyMzcwYmVhMjczNg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ZjViZWUyYzM2NmY3NmNjZjFlNTQ1ZjkyZWY1ZGE1N2VmNmQ0MDA3N2ExNmNj
10
- M2RlNDZjYTlhOTU5NjM0NWU4NjQ5MjhhODVkMTk2YjE0MjM0NTM4ZDgzYjI3
11
- ODRiYTVkNzE2OTQxY2IzYjE4NzA1ZGJkNGUxZDUzYmZjMGViNDk=
9
+ ODEwNjVhMDM1ODM0ZGUyMWVmMjUxMDQzZWU2NDY1YTFlNzg4YjI2MDYxNWFk
10
+ NmI1YzU4ZmVjYzFkODNmMjhjNjYxNTRhNzc4ZDAwZDNhMmUzYzAyOTE4Yjlm
11
+ MDNkYjI3MzJjMWUzYzU5MDQ5NzhiYWVkZDJkN2I2YTExOWVmNDA=
12
12
  data.tar.gz: !binary |-
13
- ZGI3OTZlM2QzYmFhNGVjZGIzYTJlNGM0NDZmZDYwN2MxOTNiODE1ZWEwYjEw
14
- MDRmMzQxMWMwNGM1ZDJjM2RlMDk0NzZiMzg5MTBiYTg1MDJmMWFlMjFkNzQw
15
- MGU5NGI3ZGIyYmI5OWExZjUxNDZlODljZmY4YTMxYmQzN2IzZGE=
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 a exception reporting endpoint, if it
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
@@ -12,6 +12,6 @@ module Hoodoo
12
12
  # The Hoodoo gem version. If this changes, ensure that the date in
13
13
  # "hoodoo.gemspec" is correct and run "bundle install" (or "update").
14
14
  #
15
- VERSION = '1.3.0'
15
+ VERSION = '1.3.1'
16
16
 
17
17
  end
@@ -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
- :id => row_data[ 0 ],
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.0
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-17 00:00:00.000000000 Z
11
+ date: 2016-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: kgio