composite_primary_keys 2.3.5.1 → 3.0.0.b2

Sign up to get free protection for your applications and to get access to all the features.
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