aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
authorEileen M. Uchitelle <eileencodes@users.noreply.github.com>2017-12-07 07:58:21 -0500
committerGitHub <noreply@github.com>2017-12-07 07:58:21 -0500
commitbbacd60048a8efa1777a01292a9392e146a7d885 (patch)
tree8b2b0cdefaf456cf6b9461d5117bf66be3ef6552 /activerecord/test
parente2c1d5e1d73322945c6d0477c5d8a004479e6b7a (diff)
parent5ac4f4d2563e7f9c5ffaecce4be4b9e2c5b0c081 (diff)
downloadrails-bbacd60048a8efa1777a01292a9392e146a7d885.tar.gz
rails-bbacd60048a8efa1777a01292a9392e146a7d885.tar.bz2
rails-bbacd60048a8efa1777a01292a9392e146a7d885.zip
Merge pull request #31327 from aellispierce/custom-id-change-table-sqlite
Fix sqlite migrations with custom primary keys
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/cases/adapters/sqlite3/sqlite3_adapter_test.rb18
1 files changed, 18 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/sqlite3/sqlite3_adapter_test.rb b/activerecord/test/cases/adapters/sqlite3/sqlite3_adapter_test.rb
index 1f057fe5c6..14f4997d5b 100644
--- a/activerecord/test/cases/adapters/sqlite3/sqlite3_adapter_test.rb
+++ b/activerecord/test/cases/adapters/sqlite3/sqlite3_adapter_test.rb
@@ -360,6 +360,24 @@ module ActiveRecord
end
end
+ class Barcode < ActiveRecord::Base
+ end
+
+ def test_existing_records_have_custom_primary_key
+ connection = Barcode.connection
+ connection.create_table(:barcodes, primary_key: "code", id: :string, limit: 42, force: true) do |t|
+ t.text :other_attr
+ end
+ code = "214fe0c2-dd47-46df-b53b-66090b3c1d40"
+ Barcode.create! code: code, other_attr: "xxx"
+
+ connection.change_table "barcodes" do |t|
+ connection.remove_column("barcodes", "other_attr")
+ end
+
+ assert_equal code, Barcode.first.id
+ end
+
def test_supports_extensions
assert_not @conn.supports_extensions?, "does not support extensions"
end