Skip to content

Commit 48422e1

Browse files
sfc-gh-stakedaankit-bhatnagar167
authored andcommitted
SNOW-79076: Add test to ensure error code 390111 is ignored upon session closure
1 parent 7e659f0 commit 48422e1

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

test/test_unit_connection.py

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,3 +167,55 @@ def mock_post_request(url, headers, json_body, **kwargs):
167167
warehouse='TESTWH',
168168
)
169169
assert con.service_name == 'FAKE_SERVICE_NAME'
170+
171+
172+
@patch(
173+
'snowflake.connector.network.SnowflakeRestful._post_request'
174+
)
175+
def test_connection_ignore_exception(mockSnowflakeRestfulPostRequest):
176+
def mock_post_request(url, headers, json_body, **kwargs):
177+
global mock_cnt
178+
ret = None
179+
if mock_cnt == 0:
180+
# return from /v1/login-request
181+
ret = {
182+
u'success': True,
183+
u'message': None,
184+
u'data': {
185+
u'token': u'TOKEN',
186+
u'masterToken': u'MASTER_TOKEN',
187+
u'idToken': u'ID_TOKEN',
188+
u'parameters': [
189+
{'name': 'SERVICE_NAME', 'value': "FAKE_SERVICE_NAME"}
190+
],
191+
}}
192+
elif mock_cnt == 1:
193+
ret = {
194+
u'success': False,
195+
u'message': "Session gone",
196+
u'data': None,
197+
u'code': 390111
198+
}
199+
mock_cnt += 1
200+
return ret
201+
202+
# POST requests mock
203+
mockSnowflakeRestfulPostRequest.side_effect = mock_post_request
204+
205+
global mock_cnt
206+
mock_cnt = 0
207+
208+
account = 'testaccount'
209+
user = 'testuser'
210+
211+
# connection
212+
con = snowflake.connector.connect(
213+
account=account,
214+
user=user,
215+
password='testpassword',
216+
database='TESTDB',
217+
warehouse='TESTWH',
218+
)
219+
# Test to see if closing connection works or raises an exception. If an exception is raised, test will fail.
220+
con.close()
221+

0 commit comments

Comments
 (0)