Forráskód Böngészése

[editor] Move the Impala DROP DATABASE tests to json

Johan Åhlén 3 éve
szülő
commit
f44ad922b6

+ 70 - 0
desktop/core/src/desktop/js/parse/sql/impala/jison/drop/drop_database.test.json

@@ -0,0 +1,70 @@
+[
+  {
+    "namePrefix": "should suggest keywords",
+    "beforeCursor": "DROP ",
+    "afterCursor": "",
+    "containsKeywords": [
+      "DATABASE",
+      "SCHEMA"
+    ],
+    "expectedResult": {
+      "lowerCase": false
+    }
+  },
+  {
+    "namePrefix": "should suggest databases",
+    "beforeCursor": "DROP DATABASE ",
+    "afterCursor": "",
+    "expectedResult": {
+      "lowerCase": false,
+      "suggestDatabases": {},
+      "suggestKeywords": [
+        "IF EXISTS"
+      ]
+    }
+  },
+  {
+    "namePrefix": "should suggest databases",
+    "beforeCursor": "DROP SCHEMA ",
+    "afterCursor": "",
+    "expectedResult": {
+      "lowerCase": false,
+      "suggestDatabases": {},
+      "suggestKeywords": [
+        "IF EXISTS"
+      ]
+    }
+  },
+  {
+    "namePrefix": "should suggest keywords",
+    "beforeCursor": "DROP DATABASE IF ",
+    "afterCursor": "",
+    "expectedResult": {
+      "lowerCase": false,
+      "suggestKeywords": [
+        "EXISTS"
+      ]
+    }
+  },
+  {
+    "namePrefix": "should suggest databases",
+    "beforeCursor": "DROP DATABASE IF EXISTS ",
+    "afterCursor": "",
+    "expectedResult": {
+      "lowerCase": false,
+      "suggestDatabases": {}
+    }
+  },
+  {
+    "namePrefix": "should suggest keywords",
+    "beforeCursor": "DROP DATABASE foo ",
+    "afterCursor": "",
+    "expectedResult": {
+      "lowerCase": false,
+      "suggestKeywords": [
+        "CASCADE",
+        "RESTRICT"
+      ]
+    }
+  }
+]

+ 0 - 36
desktop/core/src/desktop/js/parse/sql/impala/test/impalaAutocompleteParser.Drop.test.js

@@ -243,42 +243,6 @@ describe('impalaAutocompleteParser.js DROP statements', () => {
     });
   });
 
-  describe('DROP DATABASE', () => {
-    it('should suggest databases for "DROP SCHEMA |"', () => {
-      assertAutoComplete({
-        beforeCursor: 'DROP SCHEMA ',
-        afterCursor: '',
-        expectedResult: {
-          lowerCase: false,
-          suggestDatabases: {},
-          suggestKeywords: ['IF EXISTS']
-        }
-      });
-    });
-
-    it('should suggest keywords for "DROP DATABASE IF |"', () => {
-      assertAutoComplete({
-        beforeCursor: 'DROP DATABASE IF ',
-        afterCursor: '',
-        expectedResult: {
-          lowerCase: false,
-          suggestKeywords: ['EXISTS']
-        }
-      });
-    });
-
-    it('should suggest keywords for "DROP DATABASE foo |"', () => {
-      assertAutoComplete({
-        beforeCursor: 'DROP DATABASE foo ',
-        afterCursor: '',
-        expectedResult: {
-          lowerCase: false,
-          suggestKeywords: ['CASCADE', 'RESTRICT']
-        }
-      });
-    });
-  });
-
   describe('DROP FUNCTION', () => {
     it('should handle "DROP AGGREGATE FUNCTION IF EXISTS baa.boo(INT, STRING ...);', () => {
       assertAutoComplete({

+ 8 - 0
desktop/core/src/desktop/js/parse/sql/impala/test/impalaAutocompleteParser.test.js

@@ -16,7 +16,15 @@
 
 import { assertPartials } from 'parse/sql/sharedParserTests';
 import impalaAutocompleteParser from '../impalaAutocompleteParser';
+import { extractTestCases, runTestCases } from '../../testUtils';
+
+import structure from '../jison/structure.json';
+const jisonFolder = 'desktop/core/src/desktop/js/parse/sql/impala/jison';
+const groupedTestCases = extractTestCases(jisonFolder, structure.autocomplete);
+
 describe('impalaAutocompleteParser.js', () => {
+  runTestCases(impalaAutocompleteParser, groupedTestCases);
+
   beforeAll(() => {
     impalaAutocompleteParser.yy.parseError = function (msg) {
       throw Error(msg);