File tree Expand file tree Collapse file tree 2 files changed +26
-2
lines changed Expand file tree Collapse file tree 2 files changed +26
-2
lines changed Original file line number Diff line number Diff line change 1+ import ydb
2+ import pytest
3+
4+ from os import path
5+
6+
7+ def test_scheme_error (driver_sync , database ):
8+ session = driver_sync .table_client .session ().create ()
9+ with pytest .raises (ydb .issues .SchemeError ) as exc :
10+ session .drop_table (path .join (database , "foobartable" ))
11+
12+ server_code = ydb .issues .StatusCode .SCHEME_ERROR
13+
14+ assert type (exc .value ) == ydb .issues .SchemeError
15+ assert exc .value .status == server_code
16+ assert f"server_code: { server_code } " in str (exc .value )
17+ assert "Path does not exist" in str (exc .value )
Original file line number Diff line number Diff line change @@ -159,11 +159,18 @@ class SessionPoolEmpty(Error, queue.Empty):
159159def _format_issues (issues ):
160160 if not issues :
161161 return ""
162+
162163 return " ," .join (
163- [text_format .MessageToString (issue , False , True ) for issue in issues ]
164+ text_format .MessageToString (issue , as_utf8 = False , as_one_line = True )
165+ for issue in issues
164166 )
165167
166168
169+ def _format_response (response ):
170+ fmt_issues = _format_issues (response .issues )
171+ return f"{ fmt_issues } (server_code: { response .status } )"
172+
173+
167174_success_status_codes = {StatusCode .STATUS_CODE_UNSPECIFIED , StatusCode .SUCCESS }
168175_server_side_error_map = {
169176 StatusCode .BAD_REQUEST : BadRequest ,
@@ -190,4 +197,4 @@ def _format_issues(issues):
190197def _process_response (response_proto ):
191198 if response_proto .status not in _success_status_codes :
192199 exc_obj = _server_side_error_map .get (response_proto .status )
193- raise exc_obj (_format_issues (response_proto . issues ), response_proto .issues )
200+ raise exc_obj (_format_response (response_proto ), response_proto .issues )
You can’t perform that action at this time.
0 commit comments