2023-10-13 11:16:36 +08:00
|
|
|
import FlinkSQL from '../../../../src/parser/flinksql';
|
|
|
|
import { readSQL } from '../../../helper';
|
2023-02-27 19:03:32 +08:00
|
|
|
|
2023-05-11 19:06:19 +08:00
|
|
|
const features = {
|
|
|
|
table: readSQL(__dirname, 'dropTable.sql'),
|
|
|
|
view: readSQL(__dirname, 'dropView.sql'),
|
|
|
|
function: readSQL(__dirname, 'dropFunction.sql'),
|
|
|
|
catalog: readSQL(__dirname, 'dropCatalog.sql'),
|
|
|
|
database: readSQL(__dirname, 'dropDatabase.sql'),
|
|
|
|
};
|
|
|
|
|
|
|
|
describe('FlinkSQL Drop Statements Tests', () => {
|
2023-02-27 19:03:32 +08:00
|
|
|
const parser = new FlinkSQL();
|
2023-05-11 19:06:19 +08:00
|
|
|
features.table.forEach((sql) => {
|
|
|
|
it(sql, () => {
|
|
|
|
expect(parser.validate(sql).length).toBe(0);
|
|
|
|
});
|
2023-02-27 19:03:32 +08:00
|
|
|
});
|
2023-05-11 19:06:19 +08:00
|
|
|
features.view.forEach((sql) => {
|
|
|
|
it(sql, () => {
|
|
|
|
expect(parser.validate(sql).length).toBe(0);
|
|
|
|
});
|
2023-02-27 19:03:32 +08:00
|
|
|
});
|
2023-05-11 19:06:19 +08:00
|
|
|
features.function.forEach((sql) => {
|
|
|
|
it(sql, () => {
|
|
|
|
expect(parser.validate(sql).length).toBe(0);
|
|
|
|
});
|
2023-02-27 19:03:32 +08:00
|
|
|
});
|
2023-05-11 19:06:19 +08:00
|
|
|
features.catalog.forEach((sql) => {
|
|
|
|
it(sql, () => {
|
|
|
|
expect(parser.validate(sql).length).toBe(0);
|
|
|
|
});
|
2023-10-13 11:16:36 +08:00
|
|
|
});
|
2023-05-11 19:06:19 +08:00
|
|
|
features.database.forEach((sql) => {
|
|
|
|
it(sql, () => {
|
|
|
|
expect(parser.validate(sql).length).toBe(0);
|
|
|
|
});
|
2023-02-27 19:03:32 +08:00
|
|
|
});
|
|
|
|
});
|