2 @message |
AssertionError: assert
+ Error encountered for protocol_name='NONE':
+ Incorrect parameters provided to internal function INF_transaction_info
+ (335544980,)
inet inet:///var/tmp/qa_2024/test_11587/test.fdb
LOG DETAILS:
2025-06-29 19:12:10.083
2025-06-29 19:12:10.091 act = <firebird.qa.plugin.Action object at [hex]>
2025-06-29 19:12:10.102 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2025-06-29 19:12:10.110
2025-06-29 19:12:10.117 @pytest.mark.version('>=3.0.13')
2025-06-29 19:12:10.122 def test_1(act: Action, capsys):
2025-06-29 19:12:10.128
2025-06-29 19:12:10.139 srv_config = driver_config.register_server(name = 'test_8520_srv', config = '')
2025-06-29 19:12:10.148 db_cfg_object = driver_config.register_database(name = 'test_8520_cfg')
2025-06-29 19:12:10.156 db_cfg_object.database.value = str(act.db.db_path)
2025-06-29 19:12:10.162 db_cfg_object.server.value = srv_config.name
2025-06-29 19:12:10.169
2025-06-29 19:12:10.176 sql_sttm = 'select mon$remote_protocol from mon$attachments where mon$attachment_id = current_connection'
2025-06-29 19:12:10.183
2025-06-29 19:12:10.190 protocols_list = [ None, NetProtocol.INET, ] # None - for local/embedded connection.
2025-06-29 19:12:10.201 if act.platform == 'Windows':
2025-06-29 19:12:10.210 protocols_list.append(NetProtocol.XNET)
2025-06-29 19:12:10.217 if act.is_version('<5'):
2025-06-29 19:12:10.224 protocols_list.append(NetProtocol.WNET)
2025-06-29 19:12:10.229
2025-06-29 19:12:10.235 expected_out_map = {}
2025-06-29 19:12:10.240 for p in protocols_list:
2025-06-29 19:12:10.246 db_cfg_object.protocol.value = p
2025-06-29 19:12:10.252 with connect(db_cfg_object.name, user = act.db.user, password = act.db.password) as con:
2025-06-29 19:12:10.260 protocol_name = 'UNKNOWN'
2025-06-29 19:12:10.265 with con.cursor() as cur:
2025-06-29 19:12:10.271 for r in cur.execute(sql_sttm):
2025-06-29 19:12:10.277 protocol_name = 'NONE' if p == None else p.name.upper()
2025-06-29 19:12:10.283 try:
2025-06-29 19:12:10.290 with con.main_transaction as tr:
2025-06-29 19:12:10.300 expected_out_map[ protocol_name ] = tr.info.database
2025-06-29 19:12:10.309 except DatabaseError as e:
2025-06-29 19:12:10.316 print(f'Error encountered for {protocol_name=}:')
2025-06-29 19:12:10.322 print(e.__str__())
2025-06-29 19:12:10.328 print(e.gds_codes)
2025-06-29 19:12:10.333
2025-06-29 19:12:10.339 # Construct expected output + print actual result for comparison with expected one:
2025-06-29 19:12:10.345 expected_out_lst = []
2025-06-29 19:12:10.352 for k,v in expected_out_map.items():
2025-06-29 19:12:10.358 print(k.lower(), v.lower())
2025-06-29 19:12:10.366 expected_out_lst.append( (k + ' ' + ('' if k == 'NONE' else k +'://') + str(act.db.db_path)).lower() )
2025-06-29 19:12:10.372
2025-06-29 19:12:10.379 expected_stdout = '\n'.join(expected_out_lst)
2025-06-29 19:12:10.387 act.expected_stdout = expected_stdout
2025-06-29 19:12:10.394 act.stdout = capsys.readouterr().out
2025-06-29 19:12:10.400 > assert act.clean_stdout == act.clean_expected_stdout
2025-06-29 19:12:10.406 E AssertionError: assert
2025-06-29 19:12:10.416 E + Error encountered for protocol_name='NONE':
2025-06-29 19:12:10.428 E + Incorrect parameters provided to internal function INF_transaction_info
2025-06-29 19:12:10.438 E + (335544980,)
2025-06-29 19:12:10.447 E inet inet:///var/tmp/qa_2024/test_11587/test.fdb
2025-06-29 19:12:10.454
2025-06-29 19:12:10.461 tests/bugs/gh_8520_test.py:72: AssertionError
2025-06-29 19:12:10.471 ---------------------------- Captured stdout setup -----------------------------
2025-06-29 19:12:10.484 Creating db: localhost:/var/tmp/qa_2024/test_11587/test.fdb [page_size=None, sql_dialect=None, charset='NONE', user=SYSDBA, password=masterkey]
|
3 #text |
act = <firebird.qa.plugin.Action pytest object at [hex]>
capsys = <_pytest.capture.CaptureFixture pytest object at [hex]>
@pytest.mark.version('>=3.0.13')
def test_1(act: Action, capsys):
srv_config = driver_config.register_server(name = 'test_8520_srv', config = '')
db_cfg_object = driver_config.register_database(name = 'test_8520_cfg')
db_cfg_object.database.value = str(act.db.db_path)
db_cfg_object.server.value = srv_config.name
sql_sttm = 'select mon$remote_protocol from mon$attachments where mon$attachment_id = current_connection'
protocols_list = [ None, NetProtocol.INET, ] # None - for local/embedded connection.
if act.platform == 'Windows':
protocols_list.append(NetProtocol.XNET)
if act.is_version('<5'):
protocols_list.append(NetProtocol.WNET)
expected_out_map = {}
for p in protocols_list:
db_cfg_object.protocol.value = p
with connect(db_cfg_object.name, user = act.db.user, password = act.db.password) as con:
protocol_name = 'UNKNOWN'
with con.cursor() as cur:
for r in cur.execute(sql_sttm):
protocol_name = 'NONE' if p == None else p.name.upper()
try:
with con.main_transaction as tr:
expected_out_map[ protocol_name ] = tr.info.database
except DatabaseError as e:
print(f'Error encountered for {protocol_name=}:')
print(e.__str__())
print(e.gds_codes)
# Construct expected output + print actual result for comparison with expected one:
expected_out_lst = []
for k,v in expected_out_map.items():
print(k.lower(), v.lower())
expected_out_lst.append( (k + ' ' + ('' if k == 'NONE' else k +'://') + str(act.db.db_path)).lower() )
expected_stdout = '\n'.join(expected_out_lst)
act.expected_stdout = expected_stdout
act.stdout = capsys.readouterr().out
> assert act.clean_stdout == act.clean_expected_stdout
E AssertionError: assert
E + Error encountered for protocol_name='NONE':
E + Incorrect parameters provided to internal function INF_transaction_info
E + (335544980,)
E inet inet:///var/tmp/qa_2024/test_11587/test.fdb
tests/bugs/gh_8520_test.py:72: AssertionError
|