You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by dp...@apache.org on 2021/01/21 09:35:13 UTC

[superset] branch master updated: test: sqlite db engine spec (#12616)

This is an automated email from the ASF dual-hosted git repository.

dpgaspar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git


The following commit(s) were added to refs/heads/master by this push:
     new 0de61df  test: sqlite db engine spec (#12616)
0de61df is described below

commit 0de61df72f58db957891abd10c9eb5c9110a9572
Author: Karol Kostrzewa <ka...@gmail.com>
AuthorDate: Thu Jan 21 10:34:48 2021 +0100

    test: sqlite db engine spec (#12616)
---
 tests/db_engine_specs/sqlite_tests.py | 51 +++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

diff --git a/tests/db_engine_specs/sqlite_tests.py b/tests/db_engine_specs/sqlite_tests.py
index fd3001c..bb4a19f 100644
--- a/tests/db_engine_specs/sqlite_tests.py
+++ b/tests/db_engine_specs/sqlite_tests.py
@@ -14,6 +14,8 @@
 # KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
+from unittest import mock
+
 from superset.db_engine_specs.sqlite import SqliteEngineSpec
 from tests.db_engine_specs.base_tests import TestDbEngineSpec
 
@@ -25,3 +27,52 @@ class TestSQliteDbEngineSpec(TestDbEngineSpec):
         self.assertEqual(
             SqliteEngineSpec.convert_dttm("TEXT", dttm), "'2019-01-02 03:04:05.678900'"
         )
+
+    def test_convert_dttm_lower(self):
+        dttm = self.get_dttm()
+
+        self.assertEqual(
+            SqliteEngineSpec.convert_dttm("text", dttm), "'2019-01-02 03:04:05.678900'"
+        )
+
+    def test_convert_dttm_invalid_type(self):
+        dttm = self.get_dttm()
+
+        self.assertEqual(SqliteEngineSpec.convert_dttm("other", dttm), None)
+
+    def test_get_all_datasource_names_table(self):
+        database = mock.MagicMock()
+        database.get_all_schema_names.return_value = ["schema1"]
+        table_names = ["table1", "table2"]
+        get_tables = mock.MagicMock(return_value=table_names)
+        database.get_all_table_names_in_schema = get_tables
+        result = SqliteEngineSpec.get_all_datasource_names(database, "table")
+        assert result == table_names
+        get_tables.assert_called_once_with(
+            schema="schema1",
+            force=True,
+            cache=database.table_cache_enabled,
+            cache_timeout=database.table_cache_timeout,
+        )
+
+    def test_get_all_datasource_names_view(self):
+        database = mock.MagicMock()
+        database.get_all_schema_names.return_value = ["schema1"]
+        views_names = ["view1", "view2"]
+        get_views = mock.MagicMock(return_value=views_names)
+        database.get_all_view_names_in_schema = get_views
+        result = SqliteEngineSpec.get_all_datasource_names(database, "view")
+        assert result == views_names
+        get_views.assert_called_once_with(
+            schema="schema1",
+            force=True,
+            cache=database.table_cache_enabled,
+            cache_timeout=database.table_cache_timeout,
+        )
+
+    def test_get_all_datasource_names_invalid_type(self):
+        database = mock.MagicMock()
+        database.get_all_schema_names.return_value = ["schema1"]
+        invalid_type = "asdf"
+        with self.assertRaises(Exception):
+            SqliteEngineSpec.get_all_datasource_names(database, invalid_type)