diff options
author | pdebelak <pdebelak@gmail.com> | 2017-07-07 16:19:56 -0500 |
---|---|---|
committer | pdebelak <pdebelak@gmail.com> | 2017-07-07 16:19:56 -0500 |
commit | 38b041713b609d8fcd2c458804cdef8a81e567a7 (patch) | |
tree | a8619e71433ff64aba383275d518472bd9009412 /activerecord/test/cases/adapters | |
parent | 98f8f81879825a009b0c751b3178fcb687e3033a (diff) | |
download | rails-38b041713b609d8fcd2c458804cdef8a81e567a7.tar.gz rails-38b041713b609d8fcd2c458804cdef8a81e567a7.tar.bz2 rails-38b041713b609d8fcd2c458804cdef8a81e567a7.zip |
Don't allow uuids with orphan curly braces
The uuid validation regex was allowing uuids to have a single leading
curly brace or single trailing curly brace. Saving with such a uuid
would cause Postgres to generate an exception even though the record
seemed valid. With this change, the regex requires both a leading *and*
a trailing curly brace or neither to be valid.
Diffstat (limited to 'activerecord/test/cases/adapters')
-rw-r--r-- | activerecord/test/cases/adapters/postgresql/uuid_test.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/activerecord/test/cases/adapters/postgresql/uuid_test.rb b/activerecord/test/cases/adapters/postgresql/uuid_test.rb index 8eddd81c38..00de92cdfd 100644 --- a/activerecord/test/cases/adapters/postgresql/uuid_test.rb +++ b/activerecord/test/cases/adapters/postgresql/uuid_test.rb @@ -124,7 +124,9 @@ class PostgresqlUUIDTest < ActiveRecord::PostgreSQLTestCase "Z0000C99-9C0B-4EF8-BB6D-6BB9BD380A11", "a0eebc999r0b4ef8ab6d6bb9bd380a11", "a0ee-bc99------4ef8-bb6d-6bb9-bd38-0a11", - "{a0eebc99-bb6d6bb9-bd380a11}"].each do |invalid_uuid| + "{a0eebc99-bb6d6bb9-bd380a11}", + "{a0eebc99-9c0b4ef8-bb6d6bb9-bd380a11", + "a0eebc99-9c0b4ef8-bb6d6bb9-bd380a11}"].each do |invalid_uuid| uuid = UUIDType.new guid: invalid_uuid assert_nil uuid.guid end |