From cf9f320a3df9218c071a3d62802f983c7bd45806 Mon Sep 17 00:00:00 2001 From: Shane Jaroch Date: Fri, 12 Apr 2024 18:43:34 -0400 Subject: [PATCH] fully cover: sql/__init__.py --- ntclient/persistence/sql/__init__.py | 6 +++--- tests/persistence/__init__.py | 0 tests/persistence/test_sql.py | 22 ++++++++++++++++++++++ 3 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 tests/persistence/__init__.py create mode 100644 tests/persistence/test_sql.py diff --git a/ntclient/persistence/sql/__init__.py b/ntclient/persistence/sql/__init__.py index 56c8d0d..e30cafa 100644 --- a/ntclient/persistence/sql/__init__.py +++ b/ntclient/persistence/sql/__init__.py @@ -81,10 +81,10 @@ def _prep_query( # TODO: separate `entry` & `entries` entity for single vs. bulk insert? if values: - if isinstance(values, list): - cur.executemany(query, values) - elif isinstance(values, tuple): + if isinstance(values, tuple): cur.execute(query, values) + # elif isinstance(values, list): + # cur.executemany(query, values) else: raise TypeError("'values' must be a list or tuple!") diff --git a/tests/persistence/__init__.py b/tests/persistence/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/persistence/test_sql.py b/tests/persistence/test_sql.py new file mode 100644 index 0000000..7f51aff --- /dev/null +++ b/tests/persistence/test_sql.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +""" +Created on Fri Apr 12 18:22:39 2024 + +@author: shane +""" +import pytest + +from ntclient.persistence.sql import _prep_query +from ntclient.persistence.sql.nt import nt_sqlite_connect + + +def test_prep_query_with_non_iterative_values_throws_type_error() -> None: + """Test the _prep_query method if a bare (non-iterative) values is passed in.""" + + con = nt_sqlite_connect() + query = "SELECT * FROM version WHERE id = ?;" + db_name = "nt" + values = 1 + + with pytest.raises(TypeError): + _prep_query(con, query, db_name, values) # type: ignore -- 2.52.0