dm-hibernate-migrations 1.0.0
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/lib/dm-migrations.rb +3 -0
- data/lib/dm-migrations/adapters/dm-do-adapter.rb +284 -0
- data/lib/dm-migrations/adapters/dm-mysql-adapter.rb +283 -0
- data/lib/dm-migrations/adapters/dm-oracle-adapter.rb +321 -0
- data/lib/dm-migrations/adapters/dm-postgres-adapter.rb +159 -0
- data/lib/dm-migrations/adapters/dm-sqlite-adapter.rb +96 -0
- data/lib/dm-migrations/adapters/dm-sqlserver-adapter.rb +177 -0
- data/lib/dm-migrations/adapters/dm-yaml-adapter.rb +23 -0
- data/lib/dm-migrations/auto_migration.rb +237 -0
- data/lib/dm-migrations/migration.rb +217 -0
- data/lib/dm-migrations/migration_runner.rb +85 -0
- data/lib/dm-migrations/sql.rb +5 -0
- data/lib/dm-migrations/sql/column.rb +5 -0
- data/lib/dm-migrations/sql/mysql.rb +53 -0
- data/lib/dm-migrations/sql/postgres.rb +78 -0
- data/lib/dm-migrations/sql/sqlite.rb +45 -0
- data/lib/dm-migrations/sql/table.rb +15 -0
- data/lib/dm-migrations/sql/table_creator.rb +102 -0
- data/lib/dm-migrations/sql/table_modifier.rb +51 -0
- data/lib/spec/example/migration_example_group.rb +73 -0
- data/lib/spec/matchers/migration_matchers.rb +106 -0
- data/spec/integration/auto_migration_spec.rb +506 -0
- data/spec/integration/migration_runner_spec.rb +89 -0
- data/spec/integration/migration_spec.rb +138 -0
- data/spec/integration/sql_spec.rb +190 -0
- data/spec/isolated/require_after_setup_spec.rb +30 -0
- data/spec/isolated/require_before_setup_spec.rb +30 -0
- data/spec/isolated/require_spec.rb +25 -0
- data/spec/rcov.opts +6 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +16 -0
- data/spec/unit/migration_spec.rb +453 -0
- data/spec/unit/sql/column_spec.rb +14 -0
- data/spec/unit/sql/postgres_spec.rb +97 -0
- data/spec/unit/sql/sqlite_extensions_spec.rb +108 -0
- data/spec/unit/sql/table_creator_spec.rb +94 -0
- data/spec/unit/sql/table_modifier_spec.rb +49 -0
- data/spec/unit/sql/table_spec.rb +28 -0
- data/spec/unit/sql_spec.rb +7 -0
- metadata +157 -0
@@ -0,0 +1,14 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe SQL::Column do
|
4
|
+
before do
|
5
|
+
@column = SQL::Column.new
|
6
|
+
end
|
7
|
+
|
8
|
+
%w{name type not_null default_value primary_key unique}.each do |meth|
|
9
|
+
it "should have a ##{meth} attribute" do
|
10
|
+
@column.should respond_to(meth.intern)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
@@ -0,0 +1,97 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
# a dummy class to include the module into
|
4
|
+
class PostgresExtension
|
5
|
+
include SQL::Postgres
|
6
|
+
end
|
7
|
+
|
8
|
+
describe "Postgres Extensions" do
|
9
|
+
before do
|
10
|
+
@pe = PostgresExtension.new
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'should support schema-level transactions' do
|
14
|
+
@pe.supports_schema_transactions?.should be(true)
|
15
|
+
end
|
16
|
+
|
17
|
+
it 'should support the serial column attribute' do
|
18
|
+
@pe.supports_serial?.should be(true)
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'should create a table object from the name' do
|
22
|
+
table = mock('SQLite3 Table')
|
23
|
+
SQL::Postgres::Table.should_receive(:new).with(@pe, 'users').and_return(table)
|
24
|
+
|
25
|
+
@pe.table('users').should == table
|
26
|
+
end
|
27
|
+
|
28
|
+
describe 'recreating the database' do
|
29
|
+
end
|
30
|
+
|
31
|
+
describe 'Table' do
|
32
|
+
before do
|
33
|
+
@cs1 = mock('Column Struct')
|
34
|
+
@cs2 = mock('Column Struct')
|
35
|
+
@adapter = mock('adapter', :select => [])
|
36
|
+
@adapter.stub!(:query_table).with('users').and_return([@cs1, @cs2])
|
37
|
+
|
38
|
+
@col1 = mock('Postgres Column')
|
39
|
+
@col2 = mock('Postgres Column')
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'should initialize columns by querying the table' do
|
43
|
+
SQL::Postgres::Column.should_receive(:new).with(@cs1).and_return(@col1)
|
44
|
+
SQL::Postgres::Column.should_receive(:new).with(@cs2).and_return(@col2)
|
45
|
+
@adapter.should_receive(:query_table).with('users').and_return([@cs1,@cs2])
|
46
|
+
SQL::Postgres::Table.new(@adapter, 'users')
|
47
|
+
end
|
48
|
+
|
49
|
+
it 'should create SQLite3 Column objects from the returned column structs' do
|
50
|
+
SQL::Postgres::Column.should_receive(:new).with(@cs1).and_return(@col1)
|
51
|
+
SQL::Postgres::Column.should_receive(:new).with(@cs2).and_return(@col2)
|
52
|
+
SQL::Postgres::Table.new(@adapter, 'users')
|
53
|
+
end
|
54
|
+
|
55
|
+
it 'should set the @columns to the looked-up columns' do
|
56
|
+
SQL::Postgres::Column.should_receive(:new).with(@cs1).and_return(@col1)
|
57
|
+
SQL::Postgres::Column.should_receive(:new).with(@cs2).and_return(@col2)
|
58
|
+
t = SQL::Postgres::Table.new(@adapter, 'users')
|
59
|
+
t.columns.should == [@col1, @col2]
|
60
|
+
end
|
61
|
+
|
62
|
+
describe '#query_column_constraints' do
|
63
|
+
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
67
|
+
|
68
|
+
describe 'Column' do
|
69
|
+
before do
|
70
|
+
@cs = mock('Struct',
|
71
|
+
:column_name => 'id',
|
72
|
+
:data_type => 'integer',
|
73
|
+
:column_default => 123,
|
74
|
+
:is_nullable => 'NO')
|
75
|
+
@c = SQL::Postgres::Column.new(@cs)
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'should set the name from the column_name value' do
|
79
|
+
@c.name.should == 'id'
|
80
|
+
end
|
81
|
+
|
82
|
+
it 'should set the type from the data_type value' do
|
83
|
+
@c.type.should == 'integer'
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'should set the default_value from the column_default value' do
|
87
|
+
@c.default_value.should == 123
|
88
|
+
end
|
89
|
+
|
90
|
+
it 'should set not_null based on the is_nullable value' do
|
91
|
+
@c.not_null.should == true
|
92
|
+
end
|
93
|
+
|
94
|
+
end
|
95
|
+
|
96
|
+
|
97
|
+
end
|
@@ -0,0 +1,108 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
# a dummy class to include the module into
|
4
|
+
class SqliteExtension
|
5
|
+
include SQL::Sqlite
|
6
|
+
end
|
7
|
+
|
8
|
+
describe "SQLite3 Extensions" do
|
9
|
+
before do
|
10
|
+
@se = SqliteExtension.new
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'should support schema-level transactions' do
|
14
|
+
@se.supports_schema_transactions?.should be(true)
|
15
|
+
end
|
16
|
+
|
17
|
+
it 'should support the serial column attribute' do
|
18
|
+
@se.supports_serial?.should be(true)
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'should create a table object from the name' do
|
22
|
+
table = mock('SQLite3 Table')
|
23
|
+
SQL::Sqlite::Table.should_receive(:new).with(@se, 'users').and_return(table)
|
24
|
+
|
25
|
+
@se.table('users').should == table
|
26
|
+
end
|
27
|
+
|
28
|
+
describe 'recreating the database' do
|
29
|
+
before do
|
30
|
+
uri = mock('URI', :path => '/foo/bar.db')
|
31
|
+
@se.instance_variable_set('@uri', uri)
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'should rm the db file' do
|
35
|
+
@se.should_receive(:system).with('rm /foo/bar.db')
|
36
|
+
@se.recreate_database
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
40
|
+
|
41
|
+
describe 'Table' do
|
42
|
+
before do
|
43
|
+
@cs1 = mock('Column Struct')
|
44
|
+
@cs2 = mock('Column Struct')
|
45
|
+
@adapter = mock('adapter')
|
46
|
+
@adapter.stub!(:table_info).with('users').and_return([@cs1, @cs2])
|
47
|
+
|
48
|
+
@col1 = mock('SQLite3 Column')
|
49
|
+
@col2 = mock('SQLite3 Column')
|
50
|
+
end
|
51
|
+
|
52
|
+
it 'should initialize columns by querying the table' do
|
53
|
+
SQL::Sqlite::Column.should_receive(:new).with(@cs1).and_return(@col1)
|
54
|
+
SQL::Sqlite::Column.should_receive(:new).with(@cs2).and_return(@col2)
|
55
|
+
@adapter.should_receive(:table_info).with('users').and_return([@cs1,@cs2])
|
56
|
+
SQL::Sqlite::Table.new(@adapter, 'users')
|
57
|
+
end
|
58
|
+
|
59
|
+
it 'should create SQLite3 Column objects from the returned column structs' do
|
60
|
+
SQL::Sqlite::Column.should_receive(:new).with(@cs1).and_return(@col1)
|
61
|
+
SQL::Sqlite::Column.should_receive(:new).with(@cs2).and_return(@col2)
|
62
|
+
SQL::Sqlite::Table.new(@adapter, 'users')
|
63
|
+
end
|
64
|
+
|
65
|
+
it 'should set the @columns to the looked-up columns' do
|
66
|
+
SQL::Sqlite::Column.should_receive(:new).with(@cs1).and_return(@col1)
|
67
|
+
SQL::Sqlite::Column.should_receive(:new).with(@cs2).and_return(@col2)
|
68
|
+
t = SQL::Sqlite::Table.new(@adapter, 'users')
|
69
|
+
t.columns.should == [ @col1, @col2 ]
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
73
|
+
|
74
|
+
describe 'Column' do
|
75
|
+
before do
|
76
|
+
@cs = mock('Struct',
|
77
|
+
:name => 'id',
|
78
|
+
:type => 'integer',
|
79
|
+
:dflt_value => 123,
|
80
|
+
:pk => true,
|
81
|
+
:notnull => 0)
|
82
|
+
@c = SQL::Sqlite::Column.new(@cs)
|
83
|
+
end
|
84
|
+
|
85
|
+
it 'should set the name from the name value' do
|
86
|
+
@c.name.should == 'id'
|
87
|
+
end
|
88
|
+
|
89
|
+
it 'should set the type from the type value' do
|
90
|
+
@c.type.should == 'integer'
|
91
|
+
end
|
92
|
+
|
93
|
+
it 'should set the default_value from the dflt_value value' do
|
94
|
+
@c.default_value.should == 123
|
95
|
+
end
|
96
|
+
|
97
|
+
it 'should set the primary_key from the pk value' do
|
98
|
+
@c.primary_key.should == true
|
99
|
+
end
|
100
|
+
|
101
|
+
it 'should set not_null based on the notnull value' do
|
102
|
+
@c.not_null.should == true
|
103
|
+
end
|
104
|
+
|
105
|
+
end
|
106
|
+
|
107
|
+
|
108
|
+
end
|
@@ -0,0 +1,94 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe 'SQL module' do
|
4
|
+
describe 'TableCreator' do
|
5
|
+
before do
|
6
|
+
@adapter = mock('adapter')
|
7
|
+
@adapter.stub!(:quote_name).and_return(%{'users'})
|
8
|
+
@tc = SQL::TableCreator.new(@adapter, 'users') { }
|
9
|
+
end
|
10
|
+
|
11
|
+
describe 'initialization' do
|
12
|
+
it 'should set @adapter to the adapter' do
|
13
|
+
@tc.instance_variable_get("@adapter").should == @adapter
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'should set @table_name to the stringified table name' do
|
17
|
+
@tc.instance_variable_get("@table_name").should == 'users'
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'should set @opts to the options hash' do
|
21
|
+
@tc.instance_variable_get("@opts").should == {}
|
22
|
+
end
|
23
|
+
|
24
|
+
it 'should set @columns to an empty array' do
|
25
|
+
@tc.instance_variable_get("@columns").should == []
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'should evaluate the given block' do
|
29
|
+
block = proc { column :foo, :bar }
|
30
|
+
col = mock('column')
|
31
|
+
SQL::TableCreator::Column.should_receive(:new).with(@adapter, :foo, :bar, {}).and_return(col)
|
32
|
+
tc = SQL::TableCreator.new(@adapter, 'users', {}, &block)
|
33
|
+
tc.instance_variable_get("@columns").should == [col]
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
it 'should have a table_name' do
|
38
|
+
@tc.should respond_to(:table_name)
|
39
|
+
@tc.table_name.should == 'users'
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'should use the adapter to quote the table name' do
|
43
|
+
@adapter.should_receive(:quote_name).with('users').and_return(%{'users'})
|
44
|
+
@tc.quoted_table_name.should == %{'users'}
|
45
|
+
end
|
46
|
+
|
47
|
+
it 'should initialze a new column and add it to the list of columns' do
|
48
|
+
col = mock('column')
|
49
|
+
SQL::TableCreator::Column.should_receive(:new).with(@adapter, :foo, :bar, {}).and_return(col)
|
50
|
+
@tc.column(:foo, :bar)
|
51
|
+
@tc.instance_variable_get("@columns").should == [col]
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'should output an SQL CREATE statement to build itself' do
|
55
|
+
@adapter.stub!(:table_options).and_return("")
|
56
|
+
@tc.to_sql.should ==
|
57
|
+
%{CREATE TABLE 'users' ()}
|
58
|
+
end
|
59
|
+
|
60
|
+
describe 'Column' do
|
61
|
+
before do
|
62
|
+
connection = mock('Connection')
|
63
|
+
|
64
|
+
@adapter.stub!(:quote_column_name).and_return(%{'id'})
|
65
|
+
@adapter.class.stub!(:type_map).and_return(Integer => {:type => 'int'})
|
66
|
+
@adapter.stub!(:property_schema_statement).and_return("SOME SQL")
|
67
|
+
@adapter.stub!(:with_connection).and_yield(connection)
|
68
|
+
@c = SQL::TableCreator::Column.new(@adapter, 'id', Integer, :serial => true)
|
69
|
+
end
|
70
|
+
|
71
|
+
describe 'initialization' do
|
72
|
+
it 'should set @adapter to the adapter' do
|
73
|
+
@c.instance_variable_get("@adapter").should == @adapter
|
74
|
+
end
|
75
|
+
|
76
|
+
it 'should set @name to the stringified name' do
|
77
|
+
@c.instance_variable_get("@name").should == 'id'
|
78
|
+
end
|
79
|
+
|
80
|
+
# TODO make this really the type, not this sql bullshit
|
81
|
+
it 'should set @type to the type' do
|
82
|
+
@c.instance_variable_get("@type").should == "SOME SQL"
|
83
|
+
end
|
84
|
+
|
85
|
+
it 'should set @opts to the options hash' do
|
86
|
+
@c.instance_variable_get("@opts").should == {:serial => true}
|
87
|
+
end
|
88
|
+
|
89
|
+
end
|
90
|
+
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe 'SQL module' do
|
4
|
+
describe 'TableModifier' do
|
5
|
+
before do
|
6
|
+
@adapter = mock('adapter')
|
7
|
+
@adapter.stub!(:quote_name).and_return(%{'users'})
|
8
|
+
@tc = SQL::TableModifier.new(@adapter, :users) { }
|
9
|
+
end
|
10
|
+
|
11
|
+
describe 'initialization' do
|
12
|
+
it 'should set @adapter to the adapter' do
|
13
|
+
@tc.instance_variable_get("@adapter").should == @adapter
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'should set @table_name to the stringified table name' do
|
17
|
+
@tc.instance_variable_get("@table_name").should == 'users'
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'should set @opts to the options hash' do
|
21
|
+
@tc.instance_variable_get("@opts").should == {}
|
22
|
+
end
|
23
|
+
|
24
|
+
it 'should set @statements to an empty array' do
|
25
|
+
@tc.instance_variable_get("@statements").should == []
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'should evaluate the given block' do
|
29
|
+
block = proc { column :foo, :bar }
|
30
|
+
col = mock('column')
|
31
|
+
SQL::TableCreator::Column.should_receive(:new).with(@adapter, :foo, :bar, {}).and_return(col)
|
32
|
+
tc = SQL::TableCreator.new(@adapter, 'users', {}, &block)
|
33
|
+
tc.instance_variable_get("@columns").should == [col]
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
it 'should have a table_name' do
|
38
|
+
@tc.should respond_to(:table_name)
|
39
|
+
@tc.table_name.should == 'users'
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'should use the adapter to quote the table name' do
|
43
|
+
@adapter.should_receive(:quote_name).with('users').and_return(%{'users'})
|
44
|
+
@tc.quoted_table_name.should == %{'users'}
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe SQL::Table do
|
4
|
+
before do
|
5
|
+
@table = SQL::Table.new
|
6
|
+
end
|
7
|
+
|
8
|
+
%w{name columns}.each do |meth|
|
9
|
+
it "should have a ##{meth} attribute" do
|
10
|
+
@table.should respond_to(meth.intern)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'should #to_s as the name' do
|
15
|
+
@table.name = "table_name"
|
16
|
+
@table.to_s.should == "table_name"
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'should find a column by name' do
|
20
|
+
column_a = mock('column', :name => 'id')
|
21
|
+
column_b = mock('column', :name => 'login')
|
22
|
+
@table.columns = [column_a, column_b]
|
23
|
+
|
24
|
+
@table.column('id').should == column_a
|
25
|
+
end
|
26
|
+
|
27
|
+
|
28
|
+
end
|
metadata
ADDED
@@ -0,0 +1,157 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: dm-hibernate-migrations
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 1
|
7
|
+
- 0
|
8
|
+
- 0
|
9
|
+
version: 1.0.0
|
10
|
+
platform: ruby
|
11
|
+
authors:
|
12
|
+
- Paul Sadauskas
|
13
|
+
- Kristian Meier
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2010-06-29 00:00:00 +05:30
|
19
|
+
default_executable:
|
20
|
+
dependencies:
|
21
|
+
- !ruby/object:Gem::Dependency
|
22
|
+
name: dm-core
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - ~>
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
segments:
|
29
|
+
- 1
|
30
|
+
- 0
|
31
|
+
- 0
|
32
|
+
version: 1.0.0
|
33
|
+
type: :runtime
|
34
|
+
version_requirements: *id001
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: dm-sqlite-adapter
|
37
|
+
prerelease: false
|
38
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ~>
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
segments:
|
43
|
+
- 1
|
44
|
+
- 0
|
45
|
+
- 0
|
46
|
+
version: 1.0.0
|
47
|
+
type: :development
|
48
|
+
version_requirements: *id002
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: rspec
|
51
|
+
prerelease: false
|
52
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ~>
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
segments:
|
57
|
+
- 1
|
58
|
+
- 3
|
59
|
+
version: "1.3"
|
60
|
+
type: :development
|
61
|
+
version_requirements: *id003
|
62
|
+
description: DataMapper plugin for writing and speccing migrations
|
63
|
+
email:
|
64
|
+
- psadauskas [a] gmail [d] com
|
65
|
+
- m.kristian@web.de
|
66
|
+
executables: []
|
67
|
+
|
68
|
+
extensions: []
|
69
|
+
|
70
|
+
extra_rdoc_files: []
|
71
|
+
|
72
|
+
files:
|
73
|
+
- lib/dm-migrations.rb
|
74
|
+
- lib/dm-migrations/migration_runner.rb
|
75
|
+
- lib/dm-migrations/auto_migration.rb
|
76
|
+
- lib/dm-migrations/migration.rb
|
77
|
+
- lib/dm-migrations/sql.rb
|
78
|
+
- lib/dm-migrations/sql/table.rb
|
79
|
+
- lib/dm-migrations/sql/mysql.rb
|
80
|
+
- lib/dm-migrations/sql/table_creator.rb
|
81
|
+
- lib/dm-migrations/sql/table_modifier.rb
|
82
|
+
- lib/dm-migrations/sql/postgres.rb
|
83
|
+
- lib/dm-migrations/sql/sqlite.rb
|
84
|
+
- lib/dm-migrations/sql/column.rb
|
85
|
+
- lib/dm-migrations/adapters/dm-mysql-adapter.rb
|
86
|
+
- lib/dm-migrations/adapters/dm-yaml-adapter.rb
|
87
|
+
- lib/dm-migrations/adapters/dm-sqlserver-adapter.rb
|
88
|
+
- lib/dm-migrations/adapters/dm-do-adapter.rb
|
89
|
+
- lib/dm-migrations/adapters/dm-postgres-adapter.rb
|
90
|
+
- lib/dm-migrations/adapters/dm-sqlite-adapter.rb
|
91
|
+
- lib/dm-migrations/adapters/dm-oracle-adapter.rb
|
92
|
+
- lib/spec/matchers/migration_matchers.rb
|
93
|
+
- lib/spec/example/migration_example_group.rb
|
94
|
+
- spec/rcov.opts
|
95
|
+
- spec/spec_helper.rb
|
96
|
+
- spec/spec.opts
|
97
|
+
- spec/unit/migration_spec.rb
|
98
|
+
- spec/unit/sql_spec.rb
|
99
|
+
- spec/unit/sql/postgres_spec.rb
|
100
|
+
- spec/unit/sql/table_modifier_spec.rb
|
101
|
+
- spec/unit/sql/table_spec.rb
|
102
|
+
- spec/unit/sql/sqlite_extensions_spec.rb
|
103
|
+
- spec/unit/sql/column_spec.rb
|
104
|
+
- spec/unit/sql/table_creator_spec.rb
|
105
|
+
- spec/isolated/require_before_setup_spec.rb
|
106
|
+
- spec/isolated/require_spec.rb
|
107
|
+
- spec/isolated/require_after_setup_spec.rb
|
108
|
+
- spec/integration/auto_migration_spec.rb
|
109
|
+
- spec/integration/migration_runner_spec.rb
|
110
|
+
- spec/integration/migration_spec.rb
|
111
|
+
- spec/integration/sql_spec.rb
|
112
|
+
has_rdoc: true
|
113
|
+
homepage: http://github.com/datamapper/dm-migrations
|
114
|
+
licenses:
|
115
|
+
- MIT license
|
116
|
+
post_install_message:
|
117
|
+
rdoc_options: []
|
118
|
+
|
119
|
+
require_paths:
|
120
|
+
- lib
|
121
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
122
|
+
requirements:
|
123
|
+
- - ">="
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
segments:
|
126
|
+
- 0
|
127
|
+
version: "0"
|
128
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
129
|
+
requirements:
|
130
|
+
- - ">="
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
segments:
|
133
|
+
- 0
|
134
|
+
version: "0"
|
135
|
+
requirements: []
|
136
|
+
|
137
|
+
rubyforge_project:
|
138
|
+
rubygems_version: 1.3.6
|
139
|
+
signing_key:
|
140
|
+
specification_version: 3
|
141
|
+
summary: DataMapper plugin for writing and speccing migrations
|
142
|
+
test_files:
|
143
|
+
- spec/unit/migration_spec.rb
|
144
|
+
- spec/unit/sql_spec.rb
|
145
|
+
- spec/unit/sql/postgres_spec.rb
|
146
|
+
- spec/unit/sql/table_modifier_spec.rb
|
147
|
+
- spec/unit/sql/table_spec.rb
|
148
|
+
- spec/unit/sql/sqlite_extensions_spec.rb
|
149
|
+
- spec/unit/sql/column_spec.rb
|
150
|
+
- spec/unit/sql/table_creator_spec.rb
|
151
|
+
- spec/isolated/require_before_setup_spec.rb
|
152
|
+
- spec/isolated/require_spec.rb
|
153
|
+
- spec/isolated/require_after_setup_spec.rb
|
154
|
+
- spec/integration/auto_migration_spec.rb
|
155
|
+
- spec/integration/migration_runner_spec.rb
|
156
|
+
- spec/integration/migration_spec.rb
|
157
|
+
- spec/integration/sql_spec.rb
|