composite_primary_keys 2.3.5.1 → 3.0.0.b2

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.
Files changed (103) hide show
  1. data/History.txt +26 -0
  2. data/README.txt +1 -1
  3. data/Rakefile +41 -51
  4. data/lib/composite_primary_keys.rb +19 -7
  5. data/lib/composite_primary_keys/association_preload.rb +75 -170
  6. data/lib/composite_primary_keys/associations.rb +98 -400
  7. data/lib/composite_primary_keys/associations/association_proxy.rb +32 -0
  8. data/lib/composite_primary_keys/associations/has_and_belongs_to_many_association.rb +30 -0
  9. data/lib/composite_primary_keys/associations/has_many_association.rb +72 -0
  10. data/lib/composite_primary_keys/associations/has_one_association.rb +19 -0
  11. data/lib/composite_primary_keys/associations/through_association_scope.rb +103 -0
  12. data/lib/composite_primary_keys/base.rb +148 -305
  13. data/lib/composite_primary_keys/calculations.rb +22 -64
  14. data/lib/composite_primary_keys/composite_arrays.rb +3 -10
  15. data/lib/composite_primary_keys/connection_adapters/abstract_adapter.rb +9 -0
  16. data/lib/composite_primary_keys/connection_adapters/oracle_enhanced_adapter.rb +17 -0
  17. data/lib/composite_primary_keys/connection_adapters/postgresql_adapter.rb +1 -1
  18. data/lib/composite_primary_keys/finder_methods.rb +71 -0
  19. data/lib/composite_primary_keys/fixtures.rb +1 -1
  20. data/lib/composite_primary_keys/read.rb +25 -0
  21. data/lib/composite_primary_keys/reflection.rb +30 -10
  22. data/lib/composite_primary_keys/relation.rb +31 -0
  23. data/lib/composite_primary_keys/validations/uniqueness.rb +106 -66
  24. data/lib/composite_primary_keys/version.rb +4 -4
  25. data/scripts/console.rb +1 -1
  26. data/tasks/Rakefile.rb +13 -0
  27. data/tasks/databases/mysql.rake +11 -15
  28. data/tasks/databases/oracle.rake +10 -11
  29. data/tasks/databases/postgresql.rake +10 -13
  30. data/tasks/databases/sqlite3.rake +9 -9
  31. data/test/README_tests.txt +1 -45
  32. data/test/abstract_unit.rb +17 -14
  33. data/test/connections/connection_spec.rb +19 -0
  34. data/test/connections/databases.example.yml +11 -0
  35. data/test/connections/databases.yml +13 -0
  36. data/test/connections/native_mysql/connection.rb +10 -2
  37. data/test/connections/native_oracle/connection.rb +7 -4
  38. data/test/connections/native_oracle_enhanced/connection.rb +23 -0
  39. data/test/connections/native_postgresql/connection.rb +13 -5
  40. data/test/connections/native_sqlite/connection.rb +7 -3
  41. data/test/fixtures/article_group.rb +4 -0
  42. data/test/fixtures/article_groups.yml +7 -0
  43. data/test/fixtures/db_definitions/postgresql.sql +2 -1
  44. data/test/fixtures/debug.log +133 -0
  45. data/test/fixtures/dorm.rb +3 -0
  46. data/test/fixtures/dorms.yml +2 -0
  47. data/test/fixtures/kitchen_sink.rb +3 -0
  48. data/test/fixtures/kitchen_sinks.yml +5 -0
  49. data/test/fixtures/reference_codes.yml +2 -0
  50. data/test/fixtures/reference_type.rb +1 -1
  51. data/test/fixtures/restaurant.rb +6 -0
  52. data/test/fixtures/restaurants.yml +5 -0
  53. data/test/fixtures/restaurants_suburbs.yml +11 -0
  54. data/test/fixtures/room.rb +10 -0
  55. data/test/fixtures/room_assignment.rb +4 -0
  56. data/test/fixtures/room_assignments.yml +4 -0
  57. data/test/fixtures/room_attribute.rb +3 -0
  58. data/test/fixtures/room_attribute_assignment.rb +5 -0
  59. data/test/fixtures/room_attribute_assignments.yml +4 -0
  60. data/test/fixtures/room_attributes.yml +3 -0
  61. data/test/fixtures/rooms.yml +3 -0
  62. data/test/fixtures/seat.rb +5 -0
  63. data/test/fixtures/seats.yml +4 -0
  64. data/test/fixtures/student.rb +4 -0
  65. data/test/fixtures/students.yml +2 -0
  66. data/test/test_associations.rb +27 -50
  67. data/test/test_attributes.rb +15 -19
  68. data/test/test_composite_arrays.rb +2 -21
  69. data/test/test_create.rb +3 -3
  70. data/test/test_delete.rb +7 -20
  71. data/test/test_exists.rb +3 -7
  72. data/test/test_find.rb +0 -8
  73. data/test/test_ids.rb +3 -17
  74. data/test/test_polymorphic.rb +5 -4
  75. data/test/test_suite.rb +19 -0
  76. data/test/{test_tutorial_examle.rb → test_tutorial_example.rb} +0 -0
  77. metadata +110 -72
  78. data/Manifest.txt +0 -123
  79. data/lib/adapter_helper/base.rb +0 -63
  80. data/lib/adapter_helper/mysql.rb +0 -13
  81. data/lib/adapter_helper/oracle.rb +0 -12
  82. data/lib/adapter_helper/postgresql.rb +0 -13
  83. data/lib/adapter_helper/sqlite3.rb +0 -13
  84. data/lib/composite_primary_keys/migration.rb +0 -20
  85. data/local/database_connections.rb.sample +0 -12
  86. data/local/paths.rb.sample +0 -2
  87. data/local/tasks.rb.sample +0 -2
  88. data/tasks/activerecord_selection.rake +0 -43
  89. data/tasks/databases.rake +0 -12
  90. data/tasks/deployment.rake +0 -22
  91. data/tasks/local_setup.rake +0 -13
  92. data/test/test_dummy.rb +0 -28
  93. data/tmp/test.db +0 -0
  94. data/website/index.html +0 -195
  95. data/website/index.txt +0 -159
  96. data/website/javascripts/rounded_corners_lite.inc.js +0 -285
  97. data/website/stylesheets/screen.css +0 -126
  98. data/website/template.js +0 -3
  99. data/website/template.rhtml +0 -53
  100. data/website/version-raw.js +0 -3
  101. data/website/version-raw.txt +0 -2
  102. data/website/version.js +0 -4
  103. data/website/version.txt +0 -3
@@ -30,7 +30,7 @@ class TestAttributes < ActiveSupport::TestCase
30
30
  end
31
31
  end
32
32
  end
33
-
33
+
34
34
  def test_brackets_primary_key
35
35
  testing_with do
36
36
  assert_equal @first.id, @first[@primary_keys], "[] failing for #{@klass}"
@@ -51,26 +51,22 @@ class TestAttributes < ActiveSupport::TestCase
51
51
  @flat = Tariff.find(1, Date.today.to_s(:db))
52
52
  @second_free = ProductTariff.find(2,2,Date.today.to_s(:db))
53
53
  @second_free_fk = [:tariff_id, :tariff_start_date]
54
+
54
55
  @second_free[key = @second_free_fk] = @flat.id
55
- compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
56
- assert_equal @flat.id, @second_free[key]
57
- @second_free[key = @second_free_fk.to_composite_ids] = @flat.id
58
- assert_equal @flat.id, @second_free[key]
59
- compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
60
- @second_free[key = @second_free_fk.to_composite_ids] = @flat.id.to_s
61
- assert_equal @flat.id, @second_free[key]
62
- compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
63
- @second_free[key = @second_free_fk.to_composite_ids] = @flat.id.to_s
64
- assert_equal @flat.id, @second_free[key]
65
- compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
66
- @second_free[key = @second_free_fk.to_composite_ids.to_s] = @flat.id
67
- assert_equal @flat.id, @second_free[key]
68
- compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
69
- @second_free[key = @second_free_fk.to_composite_ids.to_s] = @flat.id.to_s
70
- assert_equal @flat.id, @second_free[key]
71
- compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
56
+ compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
57
+ assert_equal @flat.id, @second_free[key]
58
+
59
+ @second_free[key = @second_free_fk.to_composite_keys] = @flat.id
60
+ assert_equal @flat.id, @second_free[key]
61
+ compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
62
+
63
+ @second_free[key = @second_free_fk.to_composite_keys.to_s] = @flat.id
64
+ assert_equal @flat.id, @second_free[key]
65
+ compare_indexes('@flat', @flat.class.primary_key, '@second_free', @second_free_fk)
72
66
  end
73
- private
67
+
68
+ private
69
+
74
70
  def compare_indexes(obj_name1, indexes1, obj_name2, indexes2)
75
71
  obj1, obj2 = eval "[#{obj_name1}, #{obj_name2}]"
76
72
  indexes1.length.times do |key_index|
@@ -24,28 +24,9 @@ class CompositeArraysTest < ActiveSupport::TestCase
24
24
  assert_equal '1,2,3', keys.to_s
25
25
  end
26
26
 
27
- def test_new_ids
28
- keys = CompositePrimaryKeys::CompositeIds.new
29
- assert_not_nil keys
30
- assert_equal '', keys.to_s
31
- assert_equal '', "#{keys}"
32
- end
33
-
34
- def test_initialize_ids
35
- keys = CompositePrimaryKeys::CompositeIds.new([1,2,3])
36
- assert_not_nil keys
37
- assert_equal '1,2,3', keys.to_s
38
- assert_equal '1,2,3', "#{keys}"
39
- end
40
-
41
27
  def test_to_composite_ids
42
28
  keys = [1,2,3].to_composite_ids
43
- assert_equal CompositePrimaryKeys::CompositeIds, keys.class
44
- assert_equal '1,2,3', keys.to_s
45
- end
46
-
47
- def test_flatten
48
- keys = [CompositePrimaryKeys::CompositeIds.new([1,2,3]), CompositePrimaryKeys::CompositeIds.new([4,5,6])]
49
- assert_equal 6, keys.flatten.size
29
+ assert_equal Array, keys.class
30
+ assert_equal '123', keys.to_s
50
31
  end
51
32
  end
@@ -29,14 +29,14 @@ class TestCreate < ActiveSupport::TestCase
29
29
  assert_not_nil @klass_info[:create]
30
30
  end
31
31
  end
32
-
32
+
33
33
  def test_create
34
34
  testing_with do
35
35
  assert new_obj = @klass.create(@klass_info[:create])
36
36
  assert !new_obj.new_record?
37
37
  end
38
38
  end
39
-
39
+
40
40
  def test_create_no_id
41
41
  testing_with do
42
42
  begin
@@ -50,7 +50,7 @@ class TestCreate < ActiveSupport::TestCase
50
50
  assert_equal composite?, !@successful, "Create should have failed for composites; #{@obj.inspect}"
51
51
  end
52
52
  end
53
-
53
+
54
54
  def test_create_on_association
55
55
  suburb = Suburb.find(:first)
56
56
  suburb.streets.create(:name => "my street")
@@ -24,14 +24,7 @@ class TestDelete < ActiveSupport::TestCase
24
24
 
25
25
  def test_destroy_one
26
26
  testing_with do
27
- #assert @first.destroy
28
- assert true
29
- end
30
- end
31
-
32
- def test_destroy_one_via_class
33
- testing_with do
34
- assert @klass.destroy(*@first.id)
27
+ assert @first.destroy
35
28
  end
36
29
  end
37
30
 
@@ -41,12 +34,6 @@ class TestDelete < ActiveSupport::TestCase
41
34
  end
42
35
  end
43
36
 
44
- def test_delete_one
45
- testing_with do
46
- assert @klass.delete(*@first.id) if composite?
47
- end
48
- end
49
-
50
37
  def test_delete_one_alone
51
38
  testing_with do
52
39
  assert @klass.delete(@first.id)
@@ -67,12 +54,12 @@ class TestDelete < ActiveSupport::TestCase
67
54
  end
68
55
 
69
56
  def test_clear_association
70
- department = Department.find(1,1)
71
- assert_equal 2, department.employees.size, "Before clear employee count should be 2."
72
- department.employees.clear
73
- assert_equal 0, department.employees.size, "After clear employee count should be 0."
74
- department.reload
75
- assert_equal 0, department.employees.size, "After clear and a reload from DB employee count should be 0."
57
+ department = Department.find(1,1)
58
+ assert_equal 2, department.employees.size, "Before clear employee count should be 2."
59
+ department.employees.clear
60
+ assert_equal 0, department.employees.size, "After clear employee count should be 0."
61
+ department.reload
62
+ assert_equal 0, department.employees.size, "After clear and a reload from DB employee count should be 0."
76
63
  end
77
64
 
78
65
  def test_delete_association
@@ -8,20 +8,16 @@ class TestExists < ActiveSupport::TestCase
8
8
  def test_single_key_exists_giving_id
9
9
  assert Article.exists?(1)
10
10
  end
11
-
11
+
12
12
  def test_single_key_exists_giving_condition
13
13
  assert Article.exists?(['name = ?', 'Article One'])
14
14
  end
15
-
16
- def test_composite_key_exists_giving_ids_as_string
17
- assert Department.exists?('1,1,')
18
- end
19
-
15
+
20
16
  def test_composite_key_exists_giving_ids_as_array
21
17
  assert Department.exists?([1,1])
22
18
  assert_equal(false, Department.exists?([1111,1111]))
23
19
  end
24
-
20
+
25
21
  def test_composite_key_exists_giving_ids_as_condition
26
22
  assert Department.exists?(['department_id = ? and location_id = ?', 1, 1])
27
23
  assert_equal(false, Department.exists?(['department_id = ? and location_id = ?', 11111, 11111]))
@@ -1,6 +1,4 @@
1
1
  require 'abstract_unit'
2
- require 'fixtures/reference_type'
3
- require 'fixtures/reference_code'
4
2
 
5
3
  # Testing the find action on composite ActiveRecords with two primary keys
6
4
  class TestFind < ActiveSupport::TestCase
@@ -53,12 +51,6 @@ class TestFind < ActiveSupport::TestCase
53
51
  end
54
52
  end
55
53
 
56
- def test_to_param
57
- testing_with do
58
- assert_equal first_id_str, @first.to_param.to_s
59
- end
60
- end
61
-
62
54
  def things_to_look_at
63
55
  testing_with do
64
56
  assert_equal found, @klass.find(found.id.to_s) # fails for 2+ keys
@@ -30,13 +30,6 @@ class TestIds < ActiveSupport::TestCase
30
30
  end
31
31
  end
32
32
 
33
- def test_id_to_s
34
- testing_with do
35
- assert_equal first_id_str, @first.id.to_s
36
- assert_equal first_id_str, "#{@first.id}"
37
- end
38
- end
39
-
40
33
  def test_ids_to_s
41
34
  testing_with do
42
35
  order = @klass.primary_key.is_a?(String) ? @klass.primary_key : @klass.primary_key.join(',')
@@ -46,13 +39,6 @@ class TestIds < ActiveSupport::TestCase
46
39
  end
47
40
  end
48
41
 
49
- def test_composite_where_clause
50
- testing_with do
51
- where = 'reference_codes.reference_type_id=1 AND reference_codes.reference_code=2) OR (reference_codes.reference_type_id=2 AND reference_codes.reference_code=2'
52
- assert_equal(where, @klass.composite_where_clause([[1, 2], [2, 2]])) if @key_test == :dual
53
- end
54
- end
55
-
56
42
  def test_set_ids_string
57
43
  testing_with do
58
44
  array = @primary_keys.collect {|key| 5}
@@ -86,12 +72,12 @@ class TestIds < ActiveSupport::TestCase
86
72
  assert_not_nil @klass.primary_keys
87
73
  assert_equal @primary_keys.map {|key| key.to_sym}, @klass.primary_keys
88
74
  assert_equal @klass.primary_keys, @klass.primary_key
75
+ assert_equal @primary_keys.map {|key| key.to_sym}.to_s, @klass.primary_key.to_s
89
76
  else
90
77
  assert_not_nil @klass.primary_key
91
- assert_equal @primary_keys, [@klass.primary_key.to_sym]
78
+ assert_equal @primary_keys.first, @klass.primary_key.to_sym
79
+ assert_equal @primary_keys.first.to_s, @klass.primary_key.to_s
92
80
  end
93
- assert_equal @primary_keys.join(','), @klass.primary_key.to_s
94
- # Need a :primary_keys should be Array with to_s overridden
95
81
  end
96
82
  end
97
83
  end
@@ -1,5 +1,7 @@
1
1
  require 'abstract_unit'
2
2
  require 'fixtures/comment'
3
+ require 'fixtures/article'
4
+ require 'fixtures/reading'
3
5
  require 'fixtures/user'
4
6
  require 'fixtures/employee'
5
7
  require 'fixtures/hack'
@@ -11,21 +13,20 @@ class TestPolymorphic < ActiveSupport::TestCase
11
13
  comments = Hack.find('andrew').comments
12
14
  assert_equal 'andrew', comments[0].person_id
13
15
  end
14
-
16
+
15
17
  def test_polymorphic_has_one
16
18
  first_comment = Hack.find('andrew').first_comment
17
19
  assert_equal 'andrew', first_comment.person_id
18
20
  end
19
-
21
+
20
22
  def test_has_many_through
21
23
  user = users(:santiago)
22
24
  article_names = user.articles.collect { |a| a.name }.sort
23
25
  assert_equal ['Article One', 'Article Two'], article_names
24
26
  end
25
-
27
+
26
28
  def test_polymorphic_has_many_through
27
29
  user = users(:santiago)
28
30
  assert_equal ['andrew'], user.hacks.collect { |a| a.name }.sort
29
31
  end
30
-
31
32
  end
@@ -0,0 +1,19 @@
1
+ require 'test/unit'
2
+
3
+ require 'test_associations'
4
+ require 'test_attribute_methods'
5
+ require 'test_attributes'
6
+ require 'test_clone'
7
+ require 'test_composite_arrays'
8
+ require 'test_create'
9
+ require 'test_delete'
10
+ require 'test_exists'
11
+ require 'test_find'
12
+ require 'test_ids'
13
+ require 'test_miscellaneous'
14
+ require 'test_pagination'
15
+ require 'test_polymorphic'
16
+ require 'test_santiago'
17
+ require 'test_tutorial_example'
18
+ require 'test_update'
19
+ require 'test_validations'
metadata CHANGED
@@ -1,105 +1,120 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: composite_primary_keys
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.5.1
4
+ hash: 6629740
5
+ prerelease: true
6
+ segments:
7
+ - 3
8
+ - 0
9
+ - 0
10
+ - b2
11
+ version: 3.0.0.b2
5
12
  platform: ruby
6
13
  authors:
7
14
  - Dr Nic Williams
15
+ - Charlie Savage
8
16
  autorequire:
9
17
  bindir: bin
10
18
  cert_chain: []
11
19
 
12
- date: 2010-02-13 00:00:00 +01:00
20
+ date: 2010-11-06 00:00:00 -06:00
13
21
  default_executable:
14
22
  dependencies:
15
23
  - !ruby/object:Gem::Dependency
16
24
  name: activerecord
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
25
+ prerelease: false
26
+ requirement: &id001 !ruby/object:Gem::Requirement
27
+ none: false
20
28
  requirements:
21
29
  - - ">="
22
30
  - !ruby/object:Gem::Version
23
- version: 2.3.5
24
- version:
31
+ hash: 5
32
+ segments:
33
+ - 3
34
+ - 0
35
+ - 1
36
+ version: 3.0.1
37
+ type: :runtime
38
+ version_requirements: *id001
25
39
  - !ruby/object:Gem::Dependency
26
- name: hoe
27
- type: :development
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
40
+ name: rspec
41
+ prerelease: false
42
+ requirement: &id002 !ruby/object:Gem::Requirement
43
+ none: false
30
44
  requirements:
31
45
  - - ">="
32
46
  - !ruby/object:Gem::Version
33
- version: 2.3.3
34
- version:
35
- description: Composite key support for ActiveRecords
36
- email: drnicwilliams@gmail.com
47
+ hash: 3
48
+ segments:
49
+ - 0
50
+ version: "0"
51
+ type: :development
52
+ version_requirements: *id002
53
+ description: Composite key support for ActiveRecord 3
54
+ email:
55
+ - drnicwilliams@gmail.com
37
56
  executables: []
38
57
 
39
58
  extensions: []
40
59
 
41
- extra_rdoc_files:
42
- - History.txt
43
- - Manifest.txt
44
- - README.txt
45
- - README_DB2.txt
46
- - website/index.txt
47
- - website/version-raw.txt
48
- - website/version.txt
60
+ extra_rdoc_files: []
61
+
49
62
  files:
63
+ - Rakefile
50
64
  - History.txt
51
- - Manifest.txt
52
65
  - README.txt
53
66
  - README_DB2.txt
54
- - Rakefile
55
67
  - init.rb
56
68
  - install.rb
57
- - lib/adapter_helper/base.rb
58
- - lib/adapter_helper/mysql.rb
59
- - lib/adapter_helper/oracle.rb
60
- - lib/adapter_helper/postgresql.rb
61
- - lib/adapter_helper/sqlite3.rb
62
- - lib/composite_primary_keys.rb
63
- - lib/composite_primary_keys/association_preload.rb
69
+ - loader.rb
70
+ - lib/composite_primary_keys/associations/association_proxy.rb
71
+ - lib/composite_primary_keys/associations/has_and_belongs_to_many_association.rb
72
+ - lib/composite_primary_keys/associations/has_many_association.rb
73
+ - lib/composite_primary_keys/associations/has_one_association.rb
74
+ - lib/composite_primary_keys/associations/through_association_scope.rb
64
75
  - lib/composite_primary_keys/associations.rb
76
+ - lib/composite_primary_keys/association_preload.rb
65
77
  - lib/composite_primary_keys/attribute_methods.rb
66
78
  - lib/composite_primary_keys/base.rb
67
79
  - lib/composite_primary_keys/calculations.rb
68
80
  - lib/composite_primary_keys/composite_arrays.rb
81
+ - lib/composite_primary_keys/connection_adapters/abstract_adapter.rb
69
82
  - lib/composite_primary_keys/connection_adapters/ibm_db_adapter.rb
70
83
  - lib/composite_primary_keys/connection_adapters/oracle_adapter.rb
84
+ - lib/composite_primary_keys/connection_adapters/oracle_enhanced_adapter.rb
71
85
  - lib/composite_primary_keys/connection_adapters/postgresql_adapter.rb
72
86
  - lib/composite_primary_keys/connection_adapters/sqlite3_adapter.rb
87
+ - lib/composite_primary_keys/finder_methods.rb
73
88
  - lib/composite_primary_keys/fixtures.rb
74
- - lib/composite_primary_keys/migration.rb
89
+ - lib/composite_primary_keys/read.rb
75
90
  - lib/composite_primary_keys/reflection.rb
91
+ - lib/composite_primary_keys/relation.rb
76
92
  - lib/composite_primary_keys/validations/uniqueness.rb
77
93
  - lib/composite_primary_keys/version.rb
78
- - loader.rb
79
- - local/database_connections.rb.sample
80
- - local/paths.rb.sample
81
- - local/tasks.rb.sample
94
+ - lib/composite_primary_keys.rb
82
95
  - scripts/console.rb
83
96
  - scripts/txt2html
84
97
  - scripts/txt2js
85
- - tasks/activerecord_selection.rake
86
- - tasks/databases.rake
87
98
  - tasks/databases/mysql.rake
88
99
  - tasks/databases/oracle.rake
89
100
  - tasks/databases/postgresql.rake
90
101
  - tasks/databases/sqlite3.rake
91
- - tasks/deployment.rake
92
- - tasks/local_setup.rake
102
+ - tasks/Rakefile.rb
93
103
  - tasks/website.rake
94
- - test/README_tests.txt
95
104
  - test/abstract_unit.rb
105
+ - test/connections/connection_spec.rb
106
+ - test/connections/databases.example.yml
107
+ - test/connections/databases.yml
96
108
  - test/connections/native_ibm_db/connection.rb
97
109
  - test/connections/native_mysql/connection.rb
98
110
  - test/connections/native_oracle/connection.rb
111
+ - test/connections/native_oracle_enhanced/connection.rb
99
112
  - test/connections/native_postgresql/connection.rb
100
113
  - test/connections/native_sqlite/connection.rb
101
114
  - test/fixtures/article.rb
102
115
  - test/fixtures/articles.yml
116
+ - test/fixtures/article_group.rb
117
+ - test/fixtures/article_groups.yml
103
118
  - test/fixtures/comment.rb
104
119
  - test/fixtures/comments.yml
105
120
  - test/fixtures/db_definitions/db2-create-tables.sql
@@ -109,30 +124,50 @@ files:
109
124
  - test/fixtures/db_definitions/oracle.sql
110
125
  - test/fixtures/db_definitions/postgresql.sql
111
126
  - test/fixtures/db_definitions/sqlite.sql
127
+ - test/fixtures/debug.log
112
128
  - test/fixtures/department.rb
113
129
  - test/fixtures/departments.yml
130
+ - test/fixtures/dorm.rb
131
+ - test/fixtures/dorms.yml
114
132
  - test/fixtures/employee.rb
115
133
  - test/fixtures/employees.yml
116
134
  - test/fixtures/group.rb
117
135
  - test/fixtures/groups.yml
118
136
  - test/fixtures/hack.rb
119
137
  - test/fixtures/hacks.yml
138
+ - test/fixtures/kitchen_sink.rb
139
+ - test/fixtures/kitchen_sinks.yml
120
140
  - test/fixtures/membership.rb
141
+ - test/fixtures/memberships.yml
121
142
  - test/fixtures/membership_status.rb
122
143
  - test/fixtures/membership_statuses.yml
123
- - test/fixtures/memberships.yml
124
144
  - test/fixtures/product.rb
145
+ - test/fixtures/products.yml
125
146
  - test/fixtures/product_tariff.rb
126
147
  - test/fixtures/product_tariffs.yml
127
- - test/fixtures/products.yml
128
148
  - test/fixtures/reading.rb
129
149
  - test/fixtures/readings.yml
130
150
  - test/fixtures/reference_code.rb
131
151
  - test/fixtures/reference_codes.yml
132
152
  - test/fixtures/reference_type.rb
133
153
  - test/fixtures/reference_types.yml
154
+ - test/fixtures/restaurant.rb
155
+ - test/fixtures/restaurants.yml
156
+ - test/fixtures/restaurants_suburbs.yml
157
+ - test/fixtures/room.rb
158
+ - test/fixtures/rooms.yml
159
+ - test/fixtures/room_assignment.rb
160
+ - test/fixtures/room_assignments.yml
161
+ - test/fixtures/room_attribute.rb
162
+ - test/fixtures/room_attributes.yml
163
+ - test/fixtures/room_attribute_assignment.rb
164
+ - test/fixtures/room_attribute_assignments.yml
165
+ - test/fixtures/seat.rb
166
+ - test/fixtures/seats.yml
134
167
  - test/fixtures/street.rb
135
168
  - test/fixtures/streets.yml
169
+ - test/fixtures/student.rb
170
+ - test/fixtures/students.yml
136
171
  - test/fixtures/suburb.rb
137
172
  - test/fixtures/suburbs.yml
138
173
  - test/fixtures/tariff.rb
@@ -142,14 +177,14 @@ files:
142
177
  - test/hash_tricks.rb
143
178
  - test/plugins/pagination.rb
144
179
  - test/plugins/pagination_helper.rb
180
+ - test/README_tests.txt
145
181
  - test/test_associations.rb
146
- - test/test_attribute_methods.rb
147
182
  - test/test_attributes.rb
183
+ - test/test_attribute_methods.rb
148
184
  - test/test_clone.rb
149
185
  - test/test_composite_arrays.rb
150
186
  - test/test_create.rb
151
187
  - test/test_delete.rb
152
- - test/test_dummy.rb
153
188
  - test/test_exists.rb
154
189
  - test/test_find.rb
155
190
  - test/test_ids.rb
@@ -157,57 +192,59 @@ files:
157
192
  - test/test_pagination.rb
158
193
  - test/test_polymorphic.rb
159
194
  - test/test_santiago.rb
160
- - test/test_tutorial_examle.rb
195
+ - test/test_suite.rb
196
+ - test/test_tutorial_example.rb
161
197
  - test/test_update.rb
162
- - tmp/test.db
163
- - website/index.html
164
- - website/index.txt
165
- - website/javascripts/rounded_corners_lite.inc.js
166
- - website/stylesheets/screen.css
167
- - website/template.js
168
- - website/template.rhtml
169
- - website/version-raw.js
170
- - website/version-raw.txt
171
- - website/version.js
172
- - website/version.txt
198
+ - test/test_validations.rb
173
199
  has_rdoc: true
174
- homepage: http://compositekeys.rubyforge.org
200
+ homepage: http://github.com/cfis/composite_primary_keys
175
201
  licenses: []
176
202
 
177
203
  post_install_message:
178
- rdoc_options:
179
- - --main
180
- - README.txt
204
+ rdoc_options: []
205
+
181
206
  require_paths:
182
207
  - lib
183
208
  required_ruby_version: !ruby/object:Gem::Requirement
209
+ none: false
184
210
  requirements:
185
211
  - - ">="
186
212
  - !ruby/object:Gem::Version
187
- version: "0"
188
- version:
213
+ hash: 57
214
+ segments:
215
+ - 1
216
+ - 8
217
+ - 7
218
+ version: 1.8.7
189
219
  required_rubygems_version: !ruby/object:Gem::Requirement
220
+ none: false
190
221
  requirements:
191
- - - ">="
222
+ - - ">"
192
223
  - !ruby/object:Gem::Version
193
- version: "0"
194
- version:
224
+ hash: 25
225
+ segments:
226
+ - 1
227
+ - 3
228
+ - 1
229
+ version: 1.3.1
195
230
  requirements: []
196
231
 
197
232
  rubyforge_project: compositekeys
198
- rubygems_version: 1.3.5
233
+ rubygems_version: 1.3.7
199
234
  signing_key:
200
235
  specification_version: 3
201
- summary: Composite key support for ActiveRecords
236
+ summary: Composite key support for ActiveRecord
202
237
  test_files:
238
+ - test/abstract_unit.rb
239
+ - test/hash_tricks.rb
240
+ - test/README_tests.txt
203
241
  - test/test_associations.rb
204
- - test/test_attribute_methods.rb
205
242
  - test/test_attributes.rb
243
+ - test/test_attribute_methods.rb
206
244
  - test/test_clone.rb
207
245
  - test/test_composite_arrays.rb
208
246
  - test/test_create.rb
209
247
  - test/test_delete.rb
210
- - test/test_dummy.rb
211
248
  - test/test_exists.rb
212
249
  - test/test_find.rb
213
250
  - test/test_ids.rb
@@ -215,6 +252,7 @@ test_files:
215
252
  - test/test_pagination.rb
216
253
  - test/test_polymorphic.rb
217
254
  - test/test_santiago.rb
218
- - test/test_tutorial_examle.rb
255
+ - test/test_suite.rb
256
+ - test/test_tutorial_example.rb
219
257
  - test/test_update.rb
220
258
  - test/test_validations.rb