ridgepole 0.6.6 → 0.7.0.alpha

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +2 -7
  3. data/Appraisals +4 -5
  4. data/README.md +3 -0
  5. data/gemfiles/activerecord_5.0.gemfile +1 -1
  6. data/gemfiles/{activerecord_4.2.gemfile → activerecord_5.1.gemfile} +1 -2
  7. data/lib/ridgepole.rb +1 -0
  8. data/lib/ridgepole/client.rb +1 -3
  9. data/lib/ridgepole/connection_adapters.rb +11 -0
  10. data/lib/ridgepole/delta.rb +5 -0
  11. data/lib/ridgepole/diff.rb +5 -10
  12. data/lib/ridgepole/dsl_parser/context.rb +1 -4
  13. data/lib/ridgepole/dumper.rb +0 -11
  14. data/lib/ridgepole/schema_statements_ext.rb +1 -1
  15. data/lib/ridgepole/version.rb +1 -1
  16. data/ridgepole.gemspec +2 -2
  17. data/ridgepole.iml +9 -0
  18. data/spec/erb_helper.rb +25 -15
  19. data/spec/mysql/bigint_pk/bigint_pk_spec.rb +15 -15
  20. data/spec/mysql/bigint_pk/int_pk_spec.rb +45 -0
  21. data/spec/mysql/cli/config_spec.rb +7 -7
  22. data/spec/mysql/cli/ridgepole_spec.rb +20 -20
  23. data/spec/mysql/collation/collation_spec.rb +40 -41
  24. data/spec/mysql/comment/comment_spec.rb +19 -19
  25. data/spec/mysql/default_lambda/default_lambda_spec.rb +3 -3
  26. data/spec/mysql/diff/diff2_spec.rb +8 -5
  27. data/spec/mysql/diff/diff_spec.rb +8 -5
  28. data/spec/mysql/dump/dump_class_method_spec.rb +18 -68
  29. data/spec/mysql/dump/dump_some_tables_spec.rb +10 -30
  30. data/spec/mysql/dump/dump_spec.rb +21 -54
  31. data/spec/mysql/dump/dump_without_table_options_spec.rb +8 -35
  32. data/spec/mysql/fk/migrate_change_fk_spec.rb +8 -8
  33. data/spec/mysql/fk/migrate_create_fk_spec.rb +21 -35
  34. data/spec/mysql/fk/migrate_drop_fk_spec.rb +16 -30
  35. data/spec/mysql/migrate/migrate_add_column2_spec.rb +3 -5
  36. data/spec/mysql/migrate/migrate_add_column_order_spec.rb +21 -39
  37. data/spec/mysql/migrate/migrate_change_column5_spec.rb +8 -8
  38. data/spec/mysql/migrate/migrate_change_column6_spec.rb +18 -18
  39. data/spec/mysql/migrate/migrate_change_column_default_spec.rb +23 -16
  40. data/spec/mysql/migrate/migrate_change_column_spec.rb +34 -34
  41. data/spec/mysql/migrate/migrate_change_index3_spec.rb +19 -9
  42. data/spec/mysql/migrate/migrate_create_index_spec.rb +32 -32
  43. data/spec/mysql/migrate/migrate_create_table_spec.rb +0 -9
  44. data/spec/mysql/migrate/migrate_drop_index_spec.rb +32 -32
  45. data/spec/mysql/migrate/migrate_drop_table_spec.rb +30 -30
  46. data/spec/mysql/migrate/migrate_execute_spec.rb +68 -81
  47. data/spec/mysql/migrate/migrate_merge_mode_spec.rb +1 -3
  48. data/spec/mysql/migrate/migrate_noop_spec.rb +34 -61
  49. data/spec/mysql/migrate/migrate_rename_table_spec.rb +3 -24
  50. data/spec/mysql/migrate/migrate_same_spec.rb +12 -45
  51. data/spec/mysql/migrate/migrate_with_ignore_tables_spec.rb +6 -6
  52. data/spec/mysql/migrate/migrate_with_tables_spec.rb +2 -2
  53. data/spec/mysql/migrate/migrate_with_verbose_log_spec.rb +1 -6
  54. data/spec/mysql/migrate_/migrate_drop_index_with_alter_spec.rb +10 -10
  55. data/spec/mysql/text_blob_types/text_blob_types_spec.rb +3 -3
  56. data/spec/mysql/~default_name_fk/migrate_change_fk_spec.rb +6 -6
  57. data/spec/mysql/~default_name_fk/migrate_create_fk_spec.rb +10 -10
  58. data/spec/mysql/~default_name_fk/migrate_drop_fk_spec.rb +6 -6
  59. data/spec/postgresql/diff/diff_spec.rb +6 -0
  60. data/spec/postgresql/dump/dump_spec.rb +9 -33
  61. data/spec/postgresql/migrate/migrate_add_expression_index_spec.rb +3 -3
  62. data/spec/postgresql/migrate/migrate_bigint_spec.rb +10 -26
  63. data/spec/postgresql/migrate/migrate_create_table_spec.rb +0 -9
  64. data/spec/postgresql/migrate/migrate_create_table_with_default_proc_spec.rb +1 -1
  65. data/spec/postgresql/migrate/migrate_drop_column_with_index_spec.rb +2 -2
  66. data/spec/postgresql/migrate/migrate_drop_expression_index_spec.rb +7 -7
  67. data/spec/postgresql/migrate/migrate_drop_index_spec.rb +4 -4
  68. data/spec/postgresql/migrate/migrate_drop_table_spec.rb +3 -3
  69. data/spec/postgresql/migrate/migrate_ext_cols_spec.rb +0 -3
  70. data/spec/postgresql/migrate/migrate_same_spec.rb +9 -33
  71. data/spec/spec_condition.rb +15 -6
  72. data/spec/spec_helper.rb +2 -15
  73. metadata +14 -10
@@ -127,14 +127,14 @@ describe 'Ridgepole::Client#diff -> migrate' do
127
127
 
128
128
  <%= add_index "salaries", ["emp_no"], name: "emp_no", using: :btree %>
129
129
 
130
- create_table "titles2", id: false, force: :cascade, renamed_from: :titles do |t|
130
+ create_table "titles", id: false, force: :cascade do |t|
131
131
  t.integer "emp_no", <%= i limit(4) + {null: false} %>
132
132
  t.string "title", limit: 50, null: false
133
133
  t.date "from_date", null: false
134
134
  t.date "to_date"
135
135
  end
136
136
 
137
- <%= add_index "titles2", ["emp_no"], name: "emp_no", using: :btree %>
137
+ <%= add_index "titles", ["emp_no"], name: "emp_no", using: :btree %>
138
138
  EOS
139
139
  }
140
140
 
@@ -146,7 +146,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
146
146
  expect(delta.differ?).to be_truthy
147
147
  expect(subject.dump).to match_fuzzy actual_dsl
148
148
  delta.migrate
149
- expect(subject.dump).to match_fuzzy expected_dsl.gsub(/, renamed_from: ('employees'|:titles)/, '')
149
+ expect(subject.dump).to match_fuzzy expected_dsl.gsub(/, renamed_from: 'employees'/, '')
150
150
  }
151
151
 
152
152
  it {
@@ -154,7 +154,6 @@ describe 'Ridgepole::Client#diff -> migrate' do
154
154
  expect(delta.differ?).to be_truthy
155
155
  expect(delta.script).to match_fuzzy <<-EOS
156
156
  rename_table("employees2", "employees")
157
- rename_table("titles2", "titles")
158
157
  EOS
159
158
  }
160
159
  end
@@ -171,16 +170,6 @@ describe 'Ridgepole::Client#diff -> migrate' do
171
170
  end
172
171
 
173
172
  <%= add_index "employees", ["first_name"], name: "first_name", using: :btree %>
174
-
175
- create_table "employees3", primary_key: "emp_no", <%= i unsigned(true) + {force: :cascade} %> do |t|
176
- t.date "birth_date", null: false
177
- t.string "first_name", limit: 14, null: false
178
- t.string "last_name", limit: 16, null: false
179
- t.string "gender", limit: 1, null: false
180
- t.date "hire_date", null: false
181
- end
182
-
183
- <%= add_index "employees3", ["first_name"], name: "first_name", using: :btree %>
184
173
  EOS
185
174
  }
186
175
 
@@ -195,16 +184,6 @@ describe 'Ridgepole::Client#diff -> migrate' do
195
184
  end
196
185
 
197
186
  <%= add_index "employees2", ["first_name"], name: "first_name", using: :btree %>
198
-
199
- create_table "employees4", primary_key: "emp_no", <%= i unsigned(true) + {force: :cascade} %>, renamed_from: :employees3 do |t|
200
- t.date "birth_date", null: false
201
- t.string "first_name", limit: 14, null: false
202
- t.string "last_name", limit: 16, null: false
203
- t.string "gender", limit: 1, null: false
204
- t.date "hire_date", null: false
205
- end
206
-
207
- <%= add_index "employees4", ["first_name"], name: "first_name", using: :btree %>
208
187
  EOS
209
188
  }
210
189
 
@@ -1,53 +1,20 @@
1
1
  describe 'Ridgepole::Client#diff -> migrate' do
2
- let(:template_variables) {
3
- opts = {
4
- departments_ext: {},
5
- employees_ext: {},
6
- unsigned: {},
7
- dept_manager_pk: {primary_key: ["emp_no", "dept_no"]},
8
- dept_emp_pk: {primary_key: ["emp_no", "dept_no"]},
9
- salaries_pk: {primary_key: ["emp_no", "from_date"]},
10
- titles_pk: {primary_key: ["emp_no", "title", "from_date"]},
11
- }
12
-
13
- if condition(:mysql_awesome_enabled, :activerecord_5)
14
- opts[:employees_ext].unshift(limit: 4) if condition(:mysql_awesome_enabled)
15
- opts[:employees_ext].unshift(id: :integer)
16
-
17
- opts.merge!(
18
- departments_ext: {id: :string, limit: 4},
19
- unsigned: {unsigned: true}
20
- )
21
- end
22
-
23
- if condition(:activerecord_4)
24
- opts.merge!(
25
- dept_manager_pk: {id: false},
26
- dept_emp_pk: {id: false},
27
- salaries_pk: {id: false},
28
- titles_pk: {id: false}
29
- )
30
- end
31
-
32
- opts
33
- }
34
-
35
2
  context 'when database and definition are same' do
36
3
  let(:dsl) {
37
- erbh(<<-EOS, template_variables)
38
- create_table "clubs", <%= i @unsigned + {force: :cascade} %> do |t|
39
- t.string "name", <%= i limit(255) + {default: "", null: false} %>
4
+ erbh(<<-EOS)
5
+ create_table "clubs", <%= i cond(5.1, {id: :integer}) + {unsigned: true, force: :cascade} %> do |t|
6
+ t.string "name", default: "", null: false
40
7
  end
41
8
 
42
9
  <%= add_index "clubs", ["name"], name: "idx_name", unique: true, using: :btree %>
43
10
 
44
- create_table "departments", primary_key: "dept_no", <%= i @departments_ext + {force: :cascade} %> do |t|
11
+ create_table "departments", primary_key: "dept_no", id: :string, limit: 4, force: :cascade do |t|
45
12
  t.string "dept_name", limit: 40, null: false
46
13
  end
47
14
 
48
15
  <%= add_index "departments", ["dept_name"], name: "dept_name", unique: true, using: :btree %>
49
16
 
50
- create_table "dept_emp", <%= i @dept_emp_pk %>, force: :cascade do |t|
17
+ create_table "dept_emp", primary_key: ["emp_no", "dept_no"], force: :cascade do |t|
51
18
  t.integer "emp_no", <%= i limit(4) + {null: false} %>
52
19
  t.string "dept_no", limit: 4, null: false
53
20
  t.date "from_date", null: false
@@ -57,7 +24,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
57
24
  <%= add_index "dept_emp", ["dept_no"], name: "dept_no", using: :btree %>
58
25
  <%= add_index "dept_emp", ["emp_no"], name: "emp_no", using: :btree %>
59
26
 
60
- create_table "dept_manager", <%= i @dept_manager_pk %>, force: :cascade do |t|
27
+ create_table "dept_manager", primary_key: ["emp_no", "dept_no"], force: :cascade do |t|
61
28
  t.string "dept_no", limit: 4, null: false
62
29
  t.integer "emp_no", <%= i limit(4) + {null: false} %>
63
30
  t.date "from_date", null: false
@@ -67,14 +34,14 @@ describe 'Ridgepole::Client#diff -> migrate' do
67
34
  <%= add_index "dept_manager", ["dept_no"], name: "dept_no", using: :btree %>
68
35
  <%= add_index "dept_manager", ["emp_no"], name: "emp_no", using: :btree %>
69
36
 
70
- create_table "employee_clubs", <%= i @unsigned + {force: :cascade} %> do |t|
71
- t.integer "emp_no", <%= i limit(4) + {null: false} + @unsigned %>
72
- t.integer "club_id", <%= i limit(4) + {null: false} + @unsigned %>
37
+ create_table "employee_clubs", <%= i cond(5.1, {id: :integer}) + {unsigned: true, force: :cascade} %> do |t|
38
+ t.integer "emp_no", null: false, unsigned: true
39
+ t.integer "club_id", null: false, unsigned: true
73
40
  end
74
41
 
75
42
  <%= add_index "employee_clubs", ["emp_no", "club_id"], name: "idx_emp_no_club_id", using: :btree %>
76
43
 
77
- create_table "employees", primary_key: "emp_no", <%= i @employees_ext + {force: :cascade} %> do |t|
44
+ create_table "employees", primary_key: "emp_no", id: :integer, <%= i cond(5.1, default: nil) + {force: :cascade} %> do |t|
78
45
  t.date "birth_date", null: false
79
46
  t.string "first_name", limit: 14, null: false
80
47
  t.string "last_name", limit: 16, null: false
@@ -82,7 +49,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
82
49
  t.date "hire_date", null: false
83
50
  end
84
51
 
85
- create_table "salaries", <%= i @salaries_pk %>, force: :cascade do |t|
52
+ create_table "salaries", primary_key: ["emp_no", "from_date"], force: :cascade do |t|
86
53
  t.integer "emp_no", <%= i limit(4) + {null: false} %>
87
54
  t.integer "salary", <%= i limit(4) + {null: false} %>
88
55
  t.date "from_date", null: false
@@ -91,7 +58,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
91
58
 
92
59
  <%= add_index "salaries", ["emp_no"], name: "emp_no", using: :btree %>
93
60
 
94
- create_table "titles", <%= i @titles_pk %>, force: :cascade do |t|
61
+ create_table "titles", primary_key: ["emp_no", "title", "from_date"], force: :cascade do |t|
95
62
  t.integer "emp_no", <%= i limit(4) + {null: false} %>
96
63
  t.string "title", limit: 50, null: false
97
64
  t.date "from_date", null: false
@@ -147,8 +147,8 @@ describe 'Ridgepole::Client#diff -> migrate' do
147
147
  it {
148
148
  delta = Ridgepole::Client.diff(current_schema, dsl, ignore_tables: [/^salaries$/], reverse: true, enable_mysql_awesome: true)
149
149
  expect(delta.differ?).to be_truthy
150
- expect(delta.script).to match_fuzzy <<-EOS
151
- change_column("employees", "first_name", :string, {:limit=>14, :null=>false, :default=>nil, :unsigned=>false})
150
+ expect(delta.script).to match_fuzzy erbh(<<-EOS)
151
+ change_column("employees", "first_name", :string, <%= {:limit=>14, :null=>false, :default=>nil, :unsigned=>false} + cond('5.1', comment: nil) %>)
152
152
  EOS
153
153
  }
154
154
  end
@@ -234,8 +234,8 @@ describe 'Ridgepole::Client#diff -> migrate' do
234
234
  it {
235
235
  delta = Ridgepole::Client.diff(current_schema, dsl, ignore_tables: [/^salaries$/], reverse: true, enable_mysql_awesome: true)
236
236
  expect(delta.differ?).to be_truthy
237
- expect(delta.script).to match_fuzzy <<-EOS
238
- change_column("employees", "first_name", :string, {:limit=>14, :null=>false, :default=>nil, :unsigned=>false})
237
+ expect(delta.script).to match_fuzzy erbh(<<-EOS)
238
+ change_column("employees", "first_name", :string, <%= {:limit=>14, :null=>false, :default=>nil, :unsigned=>false} + cond('5.1', comment: nil) %>)
239
239
  EOS
240
240
  }
241
241
  end
@@ -321,8 +321,8 @@ describe 'Ridgepole::Client#diff -> migrate' do
321
321
  it {
322
322
  delta = Ridgepole::Client.diff(current_schema, dsl, ignore_tables: [/^salaries$/], reverse: true, enable_mysql_awesome: true)
323
323
  expect(delta.differ?).to be_truthy
324
- expect(delta.script).to match_fuzzy <<-EOS
325
- change_column("employees", "first_name", :string, {:limit=>14, :null=>false, :default=>nil, :unsigned=>false})
324
+ expect(delta.script).to match_fuzzy erbh(<<-EOS)
325
+ change_column("employees", "first_name", :string, <%= {:limit=>14, :null=>false, :default=>nil, :unsigned=>false} + cond('5.1', comment: nil) %>)
326
326
  EOS
327
327
  }
328
328
  end
@@ -147,8 +147,8 @@ describe 'Ridgepole::Client#diff -> migrate' do
147
147
  it {
148
148
  delta = Ridgepole::Client.diff(current_schema, dsl, tables: ['employees'], reverse: true, enable_mysql_awesome: true)
149
149
  expect(delta.differ?).to be_truthy
150
- expect(delta.script).to match_fuzzy <<-EOS
151
- change_column("employees", "first_name", :string, {:limit=>14, :null=>false, :default=>nil, :unsigned=>false})
150
+ expect(delta.script).to match_fuzzy erbh(<<-EOS)
151
+ change_column("employees", "first_name", :string, <%= {:limit=>14, :null=>false, :default=>nil, :unsigned=>false} + cond('5.1', comment: nil) %>)
152
152
  EOS
153
153
  }
154
154
  end
@@ -51,12 +51,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
51
51
  "# employees",
52
52
  ]
53
53
 
54
-
55
- if condition(:mysql_awesome_enabled)
56
- expected_verbose_infos << " {\"birth_date\"=>{:type=>:date, :options=>{:null=>false}},\n \"first_name\"=>{:type=>:string, :options=>{:limit=>14, :null=>false}},\n \"last_name\"=>{:type=>:string, :options=>{:limit=>16, :null=>false}},\n- \"gender\"=>{:type=>:string, :options=>{:limit=>1, :null=>false}},\n+ \"gender2\"=>{:type=>:string, :options=>{:limit=>1, :null=>false}},\n \"hire_date\"=>{:type=>:date, :options=>{:null=>false}}},\n :options=>{:primary_key=>\"emp_no\", :unsigned=>true}}"
57
- else
58
- expected_verbose_infos << " {\"birth_date\"=>{:type=>:date, :options=>{:null=>false}},\n \"first_name\"=>{:type=>:string, :options=>{:limit=>14, :null=>false}},\n \"last_name\"=>{:type=>:string, :options=>{:limit=>16, :null=>false}},\n- \"gender\"=>{:type=>:string, :options=>{:limit=>1, :null=>false}},\n+ \"gender2\"=>{:type=>:string, :options=>{:limit=>1, :null=>false}},\n \"hire_date\"=>{:type=>:date, :options=>{:null=>false}}},\n :options=>{:primary_key=>\"emp_no\"}}"
59
- end
54
+ expected_verbose_infos << " {\"birth_date\"=>{:type=>:date, :options=>{:null=>false}},\n \"first_name\"=>{:type=>:string, :options=>{:limit=>14, :null=>false}},\n \"last_name\"=>{:type=>:string, :options=>{:limit=>16, :null=>false}},\n- \"gender\"=>{:type=>:string, :options=>{:limit=>1, :null=>false}},\n+ \"gender2\"=>{:type=>:string, :options=>{:limit=>1, :null=>false}},\n \"hire_date\"=>{:type=>:date, :options=>{:null=>false}}},\n :options=>{:primary_key=>\"emp_no\"}}"
60
55
 
61
56
  expect(verbose_infos).to match_array expected_verbose_infos
62
57
  }
@@ -6,7 +6,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
6
6
  t.string "name", <%= i limit(255) + {default: "", null: false} %>
7
7
  end
8
8
 
9
- <%= add_index "clubs", ["name"], name: "idx_name", unique: true, using: :btree %>
9
+ <%= add_index "clubs", ["name"], {name: "idx_name", unique: true} + cond('5.0', using: :btree) %>
10
10
 
11
11
  create_table "departments", primary_key: "dept_no", <%= i unsigned(true) + {force: :cascade} %> do |t|
12
12
  t.string "dept_name", limit: 40, null: false
@@ -21,8 +21,8 @@ describe 'Ridgepole::Client#diff -> migrate' do
21
21
  t.date "to_date", null: false
22
22
  end
23
23
 
24
- <%= add_index "dept_emp", ["dept_no"], name: "dept_no", using: :btree %>
25
- <%= add_index "dept_emp", ["emp_no"], name: "emp_no", using: :btree %>
24
+ <%= add_index "dept_emp", ["dept_no"], {name: "dept_no"} + cond('5.0', using: :btree) %>
25
+ <%= add_index "dept_emp", ["emp_no"], {name: "emp_no"} + cond('5.0', using: :btree) %>
26
26
 
27
27
  create_table "dept_manager", id: false, force: :cascade do |t|
28
28
  t.string "dept_no", <%= i limit(4) + {null: false} %>
@@ -31,8 +31,8 @@ describe 'Ridgepole::Client#diff -> migrate' do
31
31
  t.date "to_date", null: false
32
32
  end
33
33
 
34
- <%= add_index "dept_manager", ["dept_no"], name: "dept_no", using: :btree %>
35
- <%= add_index "dept_manager", ["emp_no"], name: "emp_no", using: :btree %>
34
+ <%= add_index "dept_manager", ["dept_no"], {name: "dept_no"} + cond('5.0', using: :btree) %>
35
+ <%= add_index "dept_manager", ["emp_no"], {name: "emp_no"} + cond('5.0', using: :btree) %>
36
36
 
37
37
  create_table "employee_clubs", <%= i unsigned(true) + {force: :cascade} %> do |t|
38
38
  t.integer "emp_no", <%= i limit(4) + {null: false} + unsigned(true) %>
@@ -56,7 +56,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
56
56
  t.date "to_date", null: false
57
57
  end
58
58
 
59
- <%= add_index "salaries", ["emp_no"], name: "emp_no", using: :btree %>
59
+ <%= add_index "salaries", ["emp_no"], {name: "emp_no"} + cond('5.0', using: :btree) %>
60
60
 
61
61
  create_table "titles", id: false, force: :cascade do |t|
62
62
  t.integer "emp_no", <%= i limit(4) + {null: false} %>
@@ -65,7 +65,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
65
65
  t.date "to_date"
66
66
  end
67
67
 
68
- <%= add_index "titles", ["emp_no"], name: "emp_no", using: :btree %>
68
+ <%= add_index "titles", ["emp_no"], {name: "emp_no"} + cond('5.0', using: :btree) %>
69
69
  EOS
70
70
  }
71
71
 
@@ -91,7 +91,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
91
91
  end
92
92
 
93
93
  <%= add_index "dept_emp", ["dept_no"], name: "dept_no", using: :btree %>
94
- <%= add_index "dept_emp", ["emp_no"], name: "emp_no", using: :btree %>
94
+ <%= add_index "dept_emp", ["emp_no"], {name: "emp_no"} + cond('5.0', using: :btree) %>
95
95
 
96
96
  create_table "dept_manager", id: false, force: :cascade do |t|
97
97
  t.string "dept_no", <%= i limit(4) + {null: false} %>
@@ -101,7 +101,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
101
101
  end
102
102
 
103
103
  <%= add_index "dept_manager", ["dept_no"], name: "dept_no", using: :btree %>
104
- <%= add_index "dept_manager", ["emp_no"], name: "emp_no", using: :btree %>
104
+ <%= add_index "dept_manager", ["emp_no"], {name: "emp_no"} + cond('5.0', using: :btree) %>
105
105
 
106
106
  create_table "employee_clubs", <%= i unsigned(true) + {force: :cascade} %> do |t|
107
107
  t.integer "emp_no", <%= i limit(4) + {null: false} + unsigned(true) %>
@@ -123,7 +123,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
123
123
  t.date "to_date", null: false
124
124
  end
125
125
 
126
- <%= add_index "salaries", ["emp_no"], name: "emp_no", using: :btree %>
126
+ <%= add_index "salaries", ["emp_no"], {name: "emp_no"} + cond('5.0', using: :btree) %>
127
127
 
128
128
  create_table "titles", id: false, force: :cascade do |t|
129
129
  t.integer "emp_no", <%= i limit(4) + {null: false} %>
@@ -1,4 +1,4 @@
1
- describe 'Ridgepole::Client (with new text/blob types)', condition: [:activerecord_5] do
1
+ describe 'Ridgepole::Client (with new text/blob types)' do
2
2
  context 'when use new types' do
3
3
  subject { client }
4
4
 
@@ -22,9 +22,9 @@ describe 'Ridgepole::Client (with new text/blob types)', condition: [:activereco
22
22
  expect(delta.differ?).to be_truthy
23
23
  delta.migrate
24
24
 
25
- expect(subject.dump).to match_fuzzy <<-EOS
25
+ expect(subject.dump).to match_fuzzy erbh(<<-EOS)
26
26
  create_table "foos", force: :cascade do |t|
27
- t.binary "blob", limit: 65535
27
+ t.binary "blob", <%= i cond('5.0', limit: 65535) %>
28
28
  t.blob "tiny_blob", limit: 255
29
29
  t.binary "medium_blob", limit: 16777215
30
30
  t.binary "long_blob", limit: 4294967295
@@ -2,14 +2,14 @@ describe 'Ridgepole::Client#diff -> migrate' do
2
2
  context 'when change fk' do
3
3
  let(:actual_dsl) {
4
4
  erbh(<<-EOS)
5
- create_table "parent", force: :cascade do |t|
5
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
6
6
  end
7
7
 
8
8
  create_table "child", force: :cascade do |t|
9
9
  t.integer "parent_id"
10
10
  end
11
11
 
12
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
12
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
13
13
 
14
14
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc", on_delete: :cascade
15
15
  EOS
@@ -21,9 +21,9 @@ create_table "child", force: :cascade do |t|
21
21
  t.integer "parent_id", <%= i limit(4) %>
22
22
  end
23
23
 
24
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
24
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
25
25
 
26
- create_table "parent", force: :cascade do |t|
26
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
27
27
  end
28
28
 
29
29
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc", on_delete: :cascade
@@ -36,9 +36,9 @@ create_table "child", force: :cascade do |t|
36
36
  t.integer "parent_id", <%= i limit(4) %>
37
37
  end
38
38
 
39
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
39
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
40
40
 
41
- create_table "parent", force: :cascade do |t|
41
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
42
42
  end
43
43
 
44
44
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
@@ -6,9 +6,9 @@ create_table "child", <%= i unsigned(true) + {force: :cascade} %> do |t|
6
6
  t.integer "parent_id", <%= i limit(4) + unsigned(true) %>
7
7
  end
8
8
 
9
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
9
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
10
10
 
11
- create_table "parent", <%= i unsigned(true) + {force: :cascade} %> do |t|
11
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
12
12
  end
13
13
  EOS
14
14
  }
@@ -55,14 +55,14 @@ add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
55
55
  let(:dsl) {
56
56
  erbh(<<-EOS)
57
57
  # Define parent before child
58
- create_table "parent", force: :cascade do |t|
58
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
59
59
  end
60
60
 
61
61
  create_table "child", force: :cascade do |t|
62
62
  t.integer "parent_id"
63
63
  end
64
64
 
65
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
65
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
66
66
 
67
67
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
68
68
  EOS
@@ -75,9 +75,9 @@ create_table "child", force: :cascade do |t|
75
75
  t.integer "parent_id", <%= i limit(4) %>
76
76
  end
77
77
 
78
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
78
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
79
79
 
80
- create_table "parent", force: :cascade do |t|
80
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
81
81
  end
82
82
 
83
83
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
@@ -99,14 +99,14 @@ add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
99
99
  let(:dsl) {
100
100
  erbh(<<-EOS)
101
101
  # Define parent before child
102
- create_table "parent", force: :cascade do |t|
102
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
103
103
  end
104
104
 
105
105
  create_table "child", force: :cascade do |t|
106
106
  t.integer "parent_id", unsigned: true
107
107
  end
108
108
 
109
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
109
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
110
110
 
111
111
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
112
112
 
@@ -127,7 +127,7 @@ add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
127
127
  let(:dsl) {
128
128
  erbh(<<-EOS)
129
129
  # Define parent before child
130
- create_table "parent", force: :cascade do |t|
130
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
131
131
  end
132
132
 
133
133
  create_table "child", force: :cascade do |t|
@@ -153,7 +153,7 @@ add_foreign_key "child", "parent"
153
153
  let(:dsl) {
154
154
  erbh(<<-EOS)
155
155
  # Define parent before child
156
- create_table "parent", force: :cascade do |t|
156
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
157
157
  end
158
158
 
159
159
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"
@@ -2,7 +2,7 @@ describe 'Ridgepole::Client#diff -> migrate' do
2
2
  context 'when drop fk' do
3
3
  let(:actual_dsl) {
4
4
  erbh(<<-EOS)
5
- create_table "parent", force: :cascade do |t|
5
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
6
6
  end
7
7
 
8
8
  create_table "child", force: :cascade do |t|
@@ -28,9 +28,9 @@ create_table "child", force: :cascade do |t|
28
28
  t.integer "parent_id", <%= i limit(4) %>
29
29
  end
30
30
 
31
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
31
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
32
32
 
33
- create_table "parent", force: :cascade do |t|
33
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
34
34
  end
35
35
  EOS
36
36
  }
@@ -69,7 +69,7 @@ end
69
69
  context 'when drop fk when drop table' do
70
70
  let(:dsl) {
71
71
  erbh(<<-EOS)
72
- create_table "parent", force: :cascade do |t|
72
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
73
73
  end
74
74
 
75
75
 
@@ -89,9 +89,9 @@ create_table "child", force: :cascade do |t|
89
89
  t.integer "parent_id", <%= i limit(4) %>
90
90
  end
91
91
 
92
- <%= add_index "child", ["parent_id"], name: "par_id", using: :btree %>
92
+ <%= add_index "child", ["parent_id"], {name: "par_id"} + cond('5.0', using: :btree) %>
93
93
 
94
- create_table "parent", force: :cascade do |t|
94
+ create_table "parent", <%= i cond('5.1', id: :integer) %>, force: :cascade do |t|
95
95
  end
96
96
 
97
97
  add_foreign_key "child", "parent", name: "fk_rails_e74ce85cbc"