You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/lib.rs
+75-71
Original file line number
Diff line number
Diff line change
@@ -333,12 +333,11 @@ mod tests {
333
333
fnapply_create_table(){
334
334
run_test_cases(
335
335
vec![TestCase{
336
-
dialect:Dialect::Generic,
337
-
sql_a:"CREATE TABLE bar (id INT PRIMARY KEY);",
338
-
sql_b:"CREATE TABLE foo (id INT PRIMARY KEY);",
339
-
expect:
340
-
"CREATE TABLE bar (id INT PRIMARY KEY);\n\nCREATE TABLE foo (id INT PRIMARY KEY);",
341
-
}],
336
+
dialect:Dialect::Generic,
337
+
sql_a:"CREATE TABLE bar (id INT PRIMARY KEY);",
338
+
sql_b:"CREATE TABLE foo (id INT PRIMARY KEY);",
339
+
expect:"CREATE TABLE bar (id INT PRIMARY KEY);\n\nCREATE TABLE foo (id INT PRIMARY KEY);",
340
+
}],
342
341
|ast_a, ast_b| ast_a.migrate(&ast_b).unwrap(),
343
342
);
344
343
}
@@ -384,75 +383,80 @@ mod tests {
384
383
385
384
#[test]
386
385
fnapply_alter_table_alter_column(){
387
-
run_test_cases(vec![
388
-
TestCase{
389
-
dialect:Dialect::Generic,
390
-
sql_a:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY)",
391
-
sql_b:"ALTER TABLE bar ALTER COLUMN bar SET NOT NULL",
392
-
expect:"CREATE TABLE bar (bar TEXT NOT NULL, id INT PRIMARY KEY);",
393
-
},
394
-
TestCase{
395
-
dialect:Dialect::Generic,
396
-
sql_a:"CREATE TABLE bar (bar TEXT NOT NULL, id INT PRIMARY KEY)",
397
-
sql_b:"ALTER TABLE bar ALTER COLUMN bar DROP NOT NULL",
398
-
expect:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY);",
399
-
},
400
-
TestCase{
401
-
dialect:Dialect::Generic,
402
-
sql_a:"CREATE TABLE bar (bar TEXT NOT NULL DEFAULT 'foo', id INT PRIMARY KEY)",
403
-
sql_b:"ALTER TABLE bar ALTER COLUMN bar DROP DEFAULT",
404
-
expect:"CREATE TABLE bar (bar TEXT NOT NULL, id INT PRIMARY KEY);",
405
-
},
406
-
TestCase{
407
-
dialect:Dialect::Generic,
408
-
sql_a:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY)",
409
-
sql_b:"ALTER TABLE bar ALTER COLUMN bar SET DATA TYPE INTEGER",
410
-
expect:"CREATE TABLE bar (bar INTEGER, id INT PRIMARY KEY);",
411
-
},
412
-
TestCase{
413
-
dialect:Dialect::PostgreSql,
414
-
sql_a:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY)",
415
-
sql_b:"ALTER TABLE bar ALTER COLUMN bar SET DATA TYPE timestamp with time zone\n USING timestamp with time zone 'epoch' + foo_timestamp * interval '1 second'",
416
-
expect:"CREATE TABLE bar (bar TIMESTAMP WITH TIME ZONE, id INT PRIMARY KEY);",
417
-
},
418
-
TestCase{
419
-
dialect:Dialect::Generic,
420
-
sql_a:"CREATE TABLE bar (bar INTEGER, id INT PRIMARY KEY)",
421
-
sql_b:"ALTER TABLE bar ALTER COLUMN bar ADD GENERATED BY DEFAULT AS IDENTITY",
422
-
expect:"CREATE TABLE bar (\n bar INTEGER GENERATED BY DEFAULT AS IDENTITY,\n id INT PRIMARY KEY\n);",
423
-
},
424
-
TestCase{
425
-
dialect:Dialect::Generic,
426
-
sql_a:"CREATE TABLE bar (bar INTEGER, id INT PRIMARY KEY)",
427
-
sql_b:"ALTER TABLE bar ALTER COLUMN bar ADD GENERATED ALWAYS AS IDENTITY (START WITH 10)",
428
-
expect:"CREATE TABLE bar (\n bar INTEGER GENERATED ALWAYS AS IDENTITY (START WITH 10),\n id INT PRIMARY KEY\n);",
sql_a:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY)",
391
+
sql_b:"ALTER TABLE bar ALTER COLUMN bar SET NOT NULL",
392
+
expect:"CREATE TABLE bar (bar TEXT NOT NULL, id INT PRIMARY KEY);",
393
+
},
394
+
TestCase{
395
+
dialect:Dialect::Generic,
396
+
sql_a:"CREATE TABLE bar (bar TEXT NOT NULL, id INT PRIMARY KEY)",
397
+
sql_b:"ALTER TABLE bar ALTER COLUMN bar DROP NOT NULL",
398
+
expect:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY);",
399
+
},
400
+
TestCase{
401
+
dialect:Dialect::Generic,
402
+
sql_a:"CREATE TABLE bar (bar TEXT NOT NULL DEFAULT 'foo', id INT PRIMARY KEY)",
403
+
sql_b:"ALTER TABLE bar ALTER COLUMN bar DROP DEFAULT",
404
+
expect:"CREATE TABLE bar (bar TEXT NOT NULL, id INT PRIMARY KEY);",
405
+
},
406
+
TestCase{
407
+
dialect:Dialect::Generic,
408
+
sql_a:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY)",
409
+
sql_b:"ALTER TABLE bar ALTER COLUMN bar SET DATA TYPE INTEGER",
410
+
expect:"CREATE TABLE bar (bar INTEGER, id INT PRIMARY KEY);",
411
+
},
412
+
TestCase{
413
+
dialect:Dialect::PostgreSql,
414
+
sql_a:"CREATE TABLE bar (bar TEXT, id INT PRIMARY KEY)",
415
+
sql_b:"ALTER TABLE bar ALTER COLUMN bar SET DATA TYPE timestamp with time zone\n USING timestamp with time zone 'epoch' + foo_timestamp * interval '1 second'",
416
+
expect:"CREATE TABLE bar (bar TIMESTAMP WITH TIME ZONE, id INT PRIMARY KEY);",
417
+
},
418
+
TestCase{
419
+
dialect:Dialect::Generic,
420
+
sql_a:"CREATE TABLE bar (bar INTEGER, id INT PRIMARY KEY)",
421
+
sql_b:"ALTER TABLE bar ALTER COLUMN bar ADD GENERATED BY DEFAULT AS IDENTITY",
422
+
expect:"CREATE TABLE bar (\n bar INTEGER GENERATED BY DEFAULT AS IDENTITY,\n id INT PRIMARY KEY\n);",
423
+
},
424
+
TestCase{
425
+
dialect:Dialect::Generic,
426
+
sql_a:"CREATE TABLE bar (bar INTEGER, id INT PRIMARY KEY)",
427
+
sql_b:"ALTER TABLE bar ALTER COLUMN bar ADD GENERATED ALWAYS AS IDENTITY (START WITH 10)",
428
+
expect:"CREATE TABLE bar (\n bar INTEGER GENERATED ALWAYS AS IDENTITY (START WITH 10),\n id INT PRIMARY KEY\n);",
429
+
},
430
+
],
431
+
|ast_a, ast_b| ast_a.migrate(&ast_b).unwrap(),
432
+
);
431
433
}
432
434
433
435
#[test]
434
436
fnapply_create_index(){
435
-
run_test_cases(vec![
436
-
TestCase{
437
-
dialect:Dialect::Generic,
438
-
sql_a:"CREATE UNIQUE INDEX title_idx ON films (title);",
439
-
sql_b:"CREATE INDEX code_idx ON films (code);",
440
-
expect:"CREATE UNIQUE INDEX title_idx ON films(title);\n\nCREATE INDEX code_idx ON films(code);",
441
-
},
442
-
TestCase{
443
-
dialect:Dialect::Generic,
444
-
sql_a:"CREATE UNIQUE INDEX title_idx ON films (title);",
445
-
sql_b:"DROP INDEX title_idx;",
446
-
expect:"",
447
-
},
448
-
TestCase{
449
-
dialect:Dialect::Generic,
450
-
sql_a:"CREATE UNIQUE INDEX title_idx ON films (title);",
451
-
sql_b:"DROP INDEX title_idx;CREATE INDEX code_idx ON films (code);",
452
-
expect:"CREATE INDEX code_idx ON films(code);",
453
-
},
454
-
],
455
-
|ast_a, ast_b| ast_a.migrate(&ast_b).unwrap());
437
+
run_test_cases(
438
+
vec![
439
+
TestCase{
440
+
dialect:Dialect::Generic,
441
+
sql_a:"CREATE UNIQUE INDEX title_idx ON films (title);",
442
+
sql_b:"CREATE INDEX code_idx ON films (code);",
443
+
expect:"CREATE UNIQUE INDEX title_idx ON films(title);\n\nCREATE INDEX code_idx ON films(code);",
444
+
},
445
+
TestCase{
446
+
dialect:Dialect::Generic,
447
+
sql_a:"CREATE UNIQUE INDEX title_idx ON films (title);",
448
+
sql_b:"DROP INDEX title_idx;",
449
+
expect:"",
450
+
},
451
+
TestCase{
452
+
dialect:Dialect::Generic,
453
+
sql_a:"CREATE UNIQUE INDEX title_idx ON films (title);",
454
+
sql_b:"DROP INDEX title_idx;CREATE INDEX code_idx ON films (code);",
0 commit comments