active_record_inline_schema 0.5.5 → 0.5.6
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.
- data/CHANGELOG +6 -0
- data/Gemfile +5 -5
- data/lib/active_record_inline_schema/config.rb +2 -3
- data/lib/active_record_inline_schema/version.rb +1 -1
- data/spec/models.rb +7 -0
- data/spec/shared_examples.rb +16 -0
- data/spec/spec_helper.rb +1 -1
- metadata +2 -2
data/CHANGELOG
CHANGED
data/Gemfile
CHANGED
@@ -7,11 +7,11 @@ gem 'minitest'
|
|
7
7
|
gem 'minitest-reporters'
|
8
8
|
|
9
9
|
platforms :ruby do
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
10
|
+
if RUBY_VERSION >= '1.9'
|
11
|
+
gem 'debugger'
|
12
|
+
else
|
13
|
+
gem 'ruby-debug19'
|
14
|
+
end
|
15
15
|
# gem 'mysql2', '~>0.2'
|
16
16
|
gem 'mysql2', '>=0.3'
|
17
17
|
gem 'sqlite3'
|
@@ -61,9 +61,8 @@ class ActiveRecordInlineSchema::Config
|
|
61
61
|
end
|
62
62
|
elsif mysql?
|
63
63
|
if non_standard_primary_key
|
64
|
-
|
65
|
-
create_sql.sub!
|
66
|
-
create_sql.sub! 'DEFAULT NULLPRIMARY KEY', 'PRIMARY KEY'
|
64
|
+
k = connection.quote_column_name(model.primary_key)
|
65
|
+
create_sql.sub! /#{k} *([^\)]+)(?:[^,]+),/, "#{k} \\1) PRIMARY KEY,"
|
67
66
|
end
|
68
67
|
connection.execute create_sql
|
69
68
|
end
|
data/spec/models.rb
CHANGED
@@ -80,6 +80,13 @@ class AutomobileMakeModelYearVariant < ActiveRecord::Base
|
|
80
80
|
add_index :make_model_year_name
|
81
81
|
end
|
82
82
|
|
83
|
+
class Pet2 < ActiveRecord::Base
|
84
|
+
include SpecHelper
|
85
|
+
self.primary_key = "id"
|
86
|
+
col :id, :type => :integer
|
87
|
+
col :name
|
88
|
+
end
|
89
|
+
|
83
90
|
case ENV['DB_ADAPTER']
|
84
91
|
when 'mysql'
|
85
92
|
class CustomMysql < ActiveRecord::Base
|
data/spec/shared_examples.rb
CHANGED
@@ -5,6 +5,22 @@ describe ActiveRecordInlineSchema do
|
|
5
5
|
end
|
6
6
|
end
|
7
7
|
|
8
|
+
it "properly registers non-incrementing integer primary keys" do
|
9
|
+
Pet2.auto_upgrade!
|
10
|
+
e = if sqlite?
|
11
|
+
ActiveRecord::StatementInvalid
|
12
|
+
else
|
13
|
+
ActiveRecord::RecordNotUnique
|
14
|
+
end
|
15
|
+
lambda do
|
16
|
+
2.times do
|
17
|
+
p = Pet2.new
|
18
|
+
p.id = 1
|
19
|
+
p.save!
|
20
|
+
end
|
21
|
+
end.must_raise(e)
|
22
|
+
end
|
23
|
+
|
8
24
|
it 'has #key,col,property,attribute inside model' do
|
9
25
|
(!!ActiveRecord::Base.connection.table_exists?(Post.table_name)).must_equal false
|
10
26
|
(!!ActiveRecord::Base.connection.table_exists?(Category.table_name)).must_equal false
|
data/spec/spec_helper.rb
CHANGED
@@ -17,7 +17,7 @@ require 'active_record_inline_schema'
|
|
17
17
|
|
18
18
|
require 'logger'
|
19
19
|
ActiveRecord::Base.logger = Logger.new($stderr)
|
20
|
-
ActiveRecord::Base.logger.level = Logger::
|
20
|
+
ActiveRecord::Base.logger.level = Logger::INFO
|
21
21
|
|
22
22
|
module SpecHelper
|
23
23
|
def self.included(base)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_record_inline_schema
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-06-
|
13
|
+
date: 2012-06-22 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activesupport
|