diff options
author | Eileen M. Uchitelle <eileencodes@users.noreply.github.com> | 2016-12-17 13:06:51 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-17 13:06:51 -0500 |
commit | 5b37c9c4a6d823ea210e46ad5f57b1a437243e7d (patch) | |
tree | 6db3f3e7680c6ee07bf11c512c1af47c0d4c3a21 | |
parent | a8a062cbc4c8ee9cb01d8979f1ade9c7c6ebe259 (diff) | |
parent | 61cd7bd65314fe53e42593875a7425385c596740 (diff) | |
download | rails-5b37c9c4a6d823ea210e46ad5f57b1a437243e7d.tar.gz rails-5b37c9c4a6d823ea210e46ad5f57b1a437243e7d.tar.bz2 rails-5b37c9c4a6d823ea210e46ad5f57b1a437243e7d.zip |
Merge pull request #27329 from kamipo/simplify_unsigned_regex
Simplify the regex for `unsigned?` method
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/mysql/column.rb | 3 | ||||
-rw-r--r-- | activerecord/test/cases/adapters/mysql2/unsigned_type_test.rb | 2 |
2 files changed, 2 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/mysql/column.rb b/activerecord/lib/active_record/connection_adapters/mysql/column.rb index c66d543752..1499c1681f 100644 --- a/activerecord/lib/active_record/connection_adapters/mysql/column.rb +++ b/activerecord/lib/active_record/connection_adapters/mysql/column.rb @@ -5,8 +5,7 @@ module ActiveRecord delegate :extra, to: :sql_type_metadata, allow_nil: true def unsigned? - # enum and set types do not allow being defined as unsigned. - !/\A(?:enum|set)\b/.match?(sql_type) && /\bunsigned\b/.match?(sql_type) + /\bunsigned(?: zerofill)?\z/.match?(sql_type) end def case_sensitive? diff --git a/activerecord/test/cases/adapters/mysql2/unsigned_type_test.rb b/activerecord/test/cases/adapters/mysql2/unsigned_type_test.rb index 268800d538..a0823be143 100644 --- a/activerecord/test/cases/adapters/mysql2/unsigned_type_test.rb +++ b/activerecord/test/cases/adapters/mysql2/unsigned_type_test.rb @@ -15,6 +15,7 @@ class Mysql2UnsignedTypeTest < ActiveRecord::Mysql2TestCase t.bigint :unsigned_bigint, unsigned: true t.float :unsigned_float, unsigned: true t.decimal :unsigned_decimal, unsigned: true, precision: 10, scale: 2 + t.column :unsigned_zerofill, "int unsigned zerofill" end end @@ -48,7 +49,6 @@ class Mysql2UnsignedTypeTest < ActiveRecord::Mysql2TestCase t.unsigned_bigint :unsigned_bigint_t t.unsigned_float :unsigned_float_t t.unsigned_decimal :unsigned_decimal_t, precision: 10, scale: 2 - t.column :unsigned_zerofill, "int unsigned zerofill" end @connection.columns("unsigned_types").select { |c| /^unsigned_/.match?(c.name) }.each do |column| |