From 66cc90bbad4084366605999332003b019ddeae42 Mon Sep 17 00:00:00 2001 From: Bing Li <63471091+sfc-gh-bli@users.noreply.github.com> Date: Fri, 17 Jan 2025 10:10:21 -0800 Subject: [PATCH] SNOW-1882588 Add Test for PR 2136 (#2138) --- test/unit/test_cursor.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/test/unit/test_cursor.py b/test/unit/test_cursor.py index f72651d44..7b04c43e5 100644 --- a/test/unit/test_cursor.py +++ b/test/unit/test_cursor.py @@ -62,6 +62,21 @@ def test_cursor_attribute(): assert cursor.lastrowid is None +def test_query_can_be_empty_with_dataframe_ast(): + def mock_is_closed(*args, **kwargs): + return False + + fake_conn = FakeConnection() + fake_conn.is_closed = mock_is_closed + cursor = SnowflakeCursor(fake_conn) + # when `dataframe_ast` is not presented, the execute function return None + assert cursor.execute("") is None + # when `dataframe_ast` is presented, it should not return `None` + # but raise `AttributeError` since `_paramstyle` is not set in FakeConnection. + with pytest.raises(AttributeError): + cursor.execute("", _dataframe_ast="ABCD") + + @patch("snowflake.connector.cursor.SnowflakeCursor._SnowflakeCursor__cancel_query") def test_cursor_execute_timeout(mockCancelQuery): def mock_cmd_query(*args, **kwargs):