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_11332/test.fdb
LOG DETAILS:
2025-04-25 20:41:17.322
2025-04-25 20:41:17.335 act = <firebird.qa.plugin.Action object at [hex]>
2025-04-25 20:41:17.350 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2025-04-25 20:41:17.364
2025-04-25 20:41:17.379 @pytest.mark.version('>=3.0.13')
2025-04-25 20:41:17.390 def test_1(act: Action, capsys):
2025-04-25 20:41:17.399
2025-04-25 20:41:17.409 srv_config = driver_config.register_server(name = 'test_8520_srv', config = '')
2025-04-25 20:41:17.420 db_cfg_object = driver_config.register_database(name = 'test_8520_cfg')
2025-04-25 20:41:17.430 db_cfg_object.database.value = str(act.db.db_path)
2025-04-25 20:41:17.438 db_cfg_object.server.value = srv_config.name
2025-04-25 20:41:17.445
2025-04-25 20:41:17.453 sql_sttm = 'select mon$remote_protocol from mon$attachments where mon$attachment_id = current_connection'
2025-04-25 20:41:17.460
2025-04-25 20:41:17.468 protocols_list = [ None, NetProtocol.INET, ] # None - for local/embedded connection.
2025-04-25 20:41:17.475 if act.platform == 'Windows':
2025-04-25 20:41:17.482 protocols_list.append(NetProtocol.XNET)
2025-04-25 20:41:17.492 if act.is_version('<5'):
2025-04-25 20:41:17.505 protocols_list.append(NetProtocol.WNET)
2025-04-25 20:41:17.514
2025-04-25 20:41:17.523 expected_out_map = {}
2025-04-25 20:41:17.532 for p in protocols_list:
2025-04-25 20:41:17.542 db_cfg_object.protocol.value = p
2025-04-25 20:41:17.552 with connect(db_cfg_object.name, user = act.db.user, password = act.db.password) as con:
2025-04-25 20:41:17.565 protocol_name = 'UNKNOWN'
2025-04-25 20:41:17.575 with con.cursor() as cur:
2025-04-25 20:41:17.584 for r in cur.execute(sql_sttm):
2025-04-25 20:41:17.591 protocol_name = 'NONE' if p == None else p.name.upper()
2025-04-25 20:41:17.598 try:
2025-04-25 20:41:17.611 with con.main_transaction as tr:
2025-04-25 20:41:17.625 expected_out_map[ protocol_name ] = tr.info.database
2025-04-25 20:41:17.640 except DatabaseError as e:
2025-04-25 20:41:17.651 print(f'Error encountered for {protocol_name=}:')
2025-04-25 20:41:17.669 print(e.__str__())
2025-04-25 20:41:17.686 print(e.gds_codes)
2025-04-25 20:41:17.701
2025-04-25 20:41:17.715 # Construct expected output + print actual result for comparison with expected one:
2025-04-25 20:41:17.726 expected_out_lst = []
2025-04-25 20:41:17.735 for k,v in expected_out_map.items():
2025-04-25 20:41:17.743 print(k.lower(), v.lower())
2025-04-25 20:41:17.757 expected_out_lst.append( (k + ' ' + ('' if k == 'NONE' else k +'://') + str(act.db.db_path)).lower() )
2025-04-25 20:41:17.770
2025-04-25 20:41:17.780 expected_stdout = '\n'.join(expected_out_lst)
2025-04-25 20:41:17.789 act.expected_stdout = expected_stdout
2025-04-25 20:41:17.801 act.stdout = capsys.readouterr().out
2025-04-25 20:41:17.813 > assert act.clean_stdout == act.clean_expected_stdout
2025-04-25 20:41:17.823 E AssertionError: assert
2025-04-25 20:41:17.832 E + Error encountered for protocol_name='NONE':
2025-04-25 20:41:17.839 E + Incorrect parameters provided to internal function INF_transaction_info
2025-04-25 20:41:17.846 E + (335544980,)
2025-04-25 20:41:17.860 E inet inet:///var/tmp/qa_2024/test_11332/test.fdb
2025-04-25 20:41:17.872
2025-04-25 20:41:17.881 tests/bugs/gh_8520_test.py:72: AssertionError
2025-04-25 20:41:17.889 ---------------------------- Captured stdout setup -----------------------------
2025-04-25 20:41:17.897 Creating db: localhost:/var/tmp/qa_2024/test_11332/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_11332/test.fdb
tests/bugs/gh_8520_test.py:72: AssertionError
|