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_11588/test.fdb
LOG DETAILS:
2025-07-02 16:55:53.600
2025-07-02 16:55:53.606 act = <firebird.qa.plugin.Action object at [hex]>
2025-07-02 16:55:53.611 capsys = <_pytest.capture.CaptureFixture object at [hex]>
2025-07-02 16:55:53.617
2025-07-02 16:55:53.623 @pytest.mark.version('>=3.0.13')
2025-07-02 16:55:53.629 def test_1(act: Action, capsys):
2025-07-02 16:55:53.635
2025-07-02 16:55:53.642 srv_config = driver_config.register_server(name = 'test_8520_srv', config = '')
2025-07-02 16:55:53.649 db_cfg_object = driver_config.register_database(name = 'test_8520_cfg')
2025-07-02 16:55:53.655 db_cfg_object.database.value = str(act.db.db_path)
2025-07-02 16:55:53.662 db_cfg_object.server.value = srv_config.name
2025-07-02 16:55:53.673
2025-07-02 16:55:53.682 sql_sttm = 'select mon$remote_protocol from mon$attachments where mon$attachment_id = current_connection'
2025-07-02 16:55:53.690
2025-07-02 16:55:53.695 protocols_list = [ None, NetProtocol.INET, ] # None - for local/embedded connection.
2025-07-02 16:55:53.701 if act.platform == 'Windows':
2025-07-02 16:55:53.707 protocols_list.append(NetProtocol.XNET)
2025-07-02 16:55:53.712 if act.is_version('<5'):
2025-07-02 16:55:53.718 protocols_list.append(NetProtocol.WNET)
2025-07-02 16:55:53.723
2025-07-02 16:55:53.730 expected_out_map = {}
2025-07-02 16:55:53.741 for p in protocols_list:
2025-07-02 16:55:53.750 db_cfg_object.protocol.value = p
2025-07-02 16:55:53.756 with connect(db_cfg_object.name, user = act.db.user, password = act.db.password) as con:
2025-07-02 16:55:53.762 protocol_name = 'UNKNOWN'
2025-07-02 16:55:53.774 with con.cursor() as cur:
2025-07-02 16:55:53.787 for r in cur.execute(sql_sttm):
2025-07-02 16:55:53.796 protocol_name = 'NONE' if p == None else p.name.upper()
2025-07-02 16:55:53.805 try:
2025-07-02 16:55:53.811 with con.main_transaction as tr:
2025-07-02 16:55:53.817 expected_out_map[ protocol_name ] = tr.info.database
2025-07-02 16:55:53.821 except DatabaseError as e:
2025-07-02 16:55:53.826 print(f'Error encountered for {protocol_name=}:')
2025-07-02 16:55:53.831 print(e.__str__())
2025-07-02 16:55:53.836 print(e.gds_codes)
2025-07-02 16:55:53.840
2025-07-02 16:55:53.844 # Construct expected output + print actual result for comparison with expected one:
2025-07-02 16:55:53.849 expected_out_lst = []
2025-07-02 16:55:53.853 for k,v in expected_out_map.items():
2025-07-02 16:55:53.858 print(k.lower(), v.lower())
2025-07-02 16:55:53.862 expected_out_lst.append( (k + ' ' + ('' if k == 'NONE' else k +'://') + str(act.db.db_path)).lower() )
2025-07-02 16:55:53.867
2025-07-02 16:55:53.872 expected_stdout = '\n'.join(expected_out_lst)
2025-07-02 16:55:53.878 act.expected_stdout = expected_stdout
2025-07-02 16:55:53.885 act.stdout = capsys.readouterr().out
2025-07-02 16:55:53.890 > assert act.clean_stdout == act.clean_expected_stdout
2025-07-02 16:55:53.894 E AssertionError: assert
2025-07-02 16:55:53.899 E + Error encountered for protocol_name='NONE':
2025-07-02 16:55:53.903 E + Incorrect parameters provided to internal function INF_transaction_info
2025-07-02 16:55:53.908 E + (335544980,)
2025-07-02 16:55:53.912 E inet inet:///var/tmp/qa_2024/test_11588/test.fdb
2025-07-02 16:55:53.917
2025-07-02 16:55:53.921 tests/bugs/gh_8520_test.py:72: AssertionError
2025-07-02 16:55:53.926 ---------------------------- Captured stdout setup -----------------------------
2025-07-02 16:55:53.930 Creating db: localhost:/var/tmp/qa_2024/test_11588/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_11588/test.fdb
tests/bugs/gh_8520_test.py:72: AssertionError
|