composite_primary_keys 5.0.0 → 5.0.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.
- data/History.txt +6 -0
- data/lib/composite_primary_keys/base.rb +12 -2
- data/lib/composite_primary_keys/version.rb +1 -1
- data/test/test_ids.rb +12 -0
- metadata +5 -5
data/History.txt
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
== 5.0.1 2012-02-13
|
2
|
+
* Fix deprecation warning that was exactly backwards (Tom Hughes)
|
3
|
+
* Fix primary_keys handling in models that inherit from other models
|
4
|
+
but don't redefine their primary_key. Problem was the inherited
|
5
|
+
models didn't correctly reference their parents primary_keys (Charlie Savage)
|
6
|
+
|
1
7
|
== 5.0.0 2012-02-12
|
2
8
|
* Fix tests so they pass on MySql (Charlie Savage)
|
3
9
|
* Fix calculations to work with duplicate column names (cleesmith)
|
@@ -8,9 +8,19 @@ module ActiveRecord
|
|
8
8
|
|
9
9
|
class << self
|
10
10
|
def primary_keys
|
11
|
+
unless defined?(@primary_keys)
|
12
|
+
reset_primary_keys
|
13
|
+
end
|
11
14
|
@primary_keys
|
12
15
|
end
|
13
16
|
|
17
|
+
# Don't like this method name, but its modeled after how AR does it
|
18
|
+
def reset_primary_keys
|
19
|
+
if self != base_class
|
20
|
+
self.primary_keys = base_class.primary_keys
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
14
24
|
def primary_keys=(keys)
|
15
25
|
unless keys.kind_of?(Array)
|
16
26
|
self.primary_key = keys
|
@@ -27,7 +37,7 @@ module ActiveRecord
|
|
27
37
|
|
28
38
|
def set_primary_keys(*keys)
|
29
39
|
ActiveSupport::Deprecation.warn(
|
30
|
-
"Calling
|
40
|
+
"Calling set_primary_keys is deprecated. Please use `self.primary_keys = keys` instead."
|
31
41
|
)
|
32
42
|
|
33
43
|
keys = keys.first if keys.first.is_a?(Array)
|
@@ -140,4 +150,4 @@ module ActiveRecord
|
|
140
150
|
end
|
141
151
|
end
|
142
152
|
end
|
143
|
-
end
|
153
|
+
end
|
data/test/test_ids.rb
CHANGED
@@ -1,5 +1,8 @@
|
|
1
1
|
require File.expand_path('../abstract_unit', __FILE__)
|
2
2
|
|
3
|
+
class ChildCpkTest < ReferenceCode
|
4
|
+
end
|
5
|
+
|
3
6
|
class TestIds < ActiveSupport::TestCase
|
4
7
|
fixtures :reference_types, :reference_codes
|
5
8
|
|
@@ -81,6 +84,15 @@ class TestIds < ActiveSupport::TestCase
|
|
81
84
|
end
|
82
85
|
end
|
83
86
|
|
87
|
+
def test_inherited_primary_keys
|
88
|
+
assert_equal([:reference_type_id, :reference_code], ChildCpkTest.primary_keys)
|
89
|
+
end
|
90
|
+
|
91
|
+
def test_inherited_ids
|
92
|
+
cpk_test = ChildCpkTest.new
|
93
|
+
assert_equal([nil, nil], cpk_test.id)
|
94
|
+
end
|
95
|
+
|
84
96
|
def test_assign_ids
|
85
97
|
ref_code = ReferenceCode.new
|
86
98
|
assert_equal([nil, nil], ref_code.id)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: composite_primary_keys
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0.
|
4
|
+
version: 5.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,11 +10,11 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-02-
|
13
|
+
date: 2012-02-14 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activerecord
|
17
|
-
requirement: &
|
17
|
+
requirement: &21857400 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ~>
|
@@ -22,7 +22,7 @@ dependencies:
|
|
22
22
|
version: 3.2.0
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *21857400
|
26
26
|
description: Composite key support for ActiveRecord
|
27
27
|
email:
|
28
28
|
executables: []
|
@@ -192,7 +192,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
192
192
|
version: '0'
|
193
193
|
requirements: []
|
194
194
|
rubyforge_project: compositekeys
|
195
|
-
rubygems_version: 1.8.
|
195
|
+
rubygems_version: 1.8.16
|
196
196
|
signing_key:
|
197
197
|
specification_version: 3
|
198
198
|
summary: Composite key support for ActiveRecord
|