From 23a71f52bdae856b67e4f158d3c56800c7453e18 Mon Sep 17 00:00:00 2001 From: Jordan Woods <13803242+jorwoods@users.noreply.github.com> Date: Fri, 29 Aug 2025 08:07:13 -0500 Subject: [PATCH 1/3] chore: pytestify test_connection_ Embrace pytest's testing methodology in test_connection_ --- test/test_connection_.py | 66 +++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 31 deletions(-) diff --git a/test/test_connection_.py b/test/test_connection_.py index 47b796ebe..f8f2555c7 100644 --- a/test/test_connection_.py +++ b/test/test_connection_.py @@ -1,34 +1,38 @@ -import unittest import tableauserverclient as TSC +import pytest -class DatasourceModelTests(unittest.TestCase): - def test_require_boolean_query_tag_fails(self): - conn = TSC.ConnectionItem() - conn._connection_type = "postgres" - with self.assertRaises(ValueError): - conn.query_tagging = "no" - - def test_set_query_tag_normal_conn(self): - conn = TSC.ConnectionItem() - conn._connection_type = "postgres" - conn.query_tagging = True - self.assertEqual(conn.query_tagging, True) - - def test_ignore_query_tag_for_hyper(self): - conn = TSC.ConnectionItem() - conn._connection_type = "hyper" - conn.query_tagging = True - self.assertEqual(conn.query_tagging, None) - - def test_ignore_query_tag_for_teradata(self): - conn = TSC.ConnectionItem() - conn._connection_type = "teradata" - conn.query_tagging = True - self.assertEqual(conn.query_tagging, None) - - def test_ignore_query_tag_for_snowflake(self): - conn = TSC.ConnectionItem() - conn._connection_type = "snowflake" - conn.query_tagging = True - self.assertEqual(conn.query_tagging, None) + +def test_require_boolean_query_tag_fails(): + conn = TSC.ConnectionItem() + conn._connection_type = "postgres" + with pytest.raises(ValueError): + conn.query_tagging = "no" + + +def test_set_query_tag_normal_conn(): + conn = TSC.ConnectionItem() + conn._connection_type = "postgres" + conn.query_tagging = True + assert conn.query_tagging + + +def test_ignore_query_tag_for_hyper(): + conn = TSC.ConnectionItem() + conn._connection_type = "hyper" + conn.query_tagging = True + assert conn.query_tagging is None + + +def test_ignore_query_tag_for_teradata(): + conn = TSC.ConnectionItem() + conn._connection_type = "teradata" + conn.query_tagging = True + assert conn.query_tagging is None + + +def test_ignore_query_tag_for_snowflake(): + conn = TSC.ConnectionItem() + conn._connection_type = "snowflake" + conn.query_tagging = True + assert conn.query_tagging is None From 52a548e701ff46c1b6e082a0547c6615cedff65b Mon Sep 17 00:00:00 2001 From: Jordan Woods <13803242+jorwoods@users.noreply.github.com> Date: Sat, 30 Aug 2025 08:57:00 -0500 Subject: [PATCH 2/3] chore: parameterize test --- test/test_connection_.py | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/test/test_connection_.py b/test/test_connection_.py index f8f2555c7..b733d3fdc 100644 --- a/test/test_connection_.py +++ b/test/test_connection_.py @@ -17,22 +17,9 @@ def test_set_query_tag_normal_conn(): assert conn.query_tagging -def test_ignore_query_tag_for_hyper(): +@pytest.mark.parametrize("conn_type", ["hyper", "teradata", "snowflake"]) +def test_ignore_query_tag(conn_type): conn = TSC.ConnectionItem() - conn._connection_type = "hyper" - conn.query_tagging = True - assert conn.query_tagging is None - - -def test_ignore_query_tag_for_teradata(): - conn = TSC.ConnectionItem() - conn._connection_type = "teradata" - conn.query_tagging = True - assert conn.query_tagging is None - - -def test_ignore_query_tag_for_snowflake(): - conn = TSC.ConnectionItem() - conn._connection_type = "snowflake" + conn._connection_type = conn_type conn.query_tagging = True assert conn.query_tagging is None From 0b4403204e3f05031957f8e55947574f8d690a98 Mon Sep 17 00:00:00 2001 From: Jordan Woods <13803242+jorwoods@users.noreply.github.com> Date: Sat, 30 Aug 2025 08:59:43 -0500 Subject: [PATCH 3/3] chore: add type hints to tests --- test/test_connection_.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/test_connection_.py b/test/test_connection_.py index b733d3fdc..8bfed79c7 100644 --- a/test/test_connection_.py +++ b/test/test_connection_.py @@ -3,14 +3,14 @@ import pytest -def test_require_boolean_query_tag_fails(): +def test_require_boolean_query_tag_fails() -> None: conn = TSC.ConnectionItem() conn._connection_type = "postgres" with pytest.raises(ValueError): - conn.query_tagging = "no" + conn.query_tagging = "no" # type: ignore[assignment] -def test_set_query_tag_normal_conn(): +def test_set_query_tag_normal_conn() -> None: conn = TSC.ConnectionItem() conn._connection_type = "postgres" conn.query_tagging = True @@ -18,7 +18,7 @@ def test_set_query_tag_normal_conn(): @pytest.mark.parametrize("conn_type", ["hyper", "teradata", "snowflake"]) -def test_ignore_query_tag(conn_type): +def test_ignore_query_tag(conn_type: str) -> None: conn = TSC.ConnectionItem() conn._connection_type = conn_type conn.query_tagging = True