6
0
mirror of https://github.com/FirebirdSQL/firebird-qa.git synced 2025-01-22 13:33:07 +01:00

Added/Updated tests\bugs\core_6385_test.py: Added 'SQLSTATE' in substitutions: runtime error must not be suppressed. Added 'combine_output = True' in order to see SQLSTATE if any error occurs.

This commit is contained in:
pavel-zotov 2023-12-13 20:20:12 +03:00
parent 83ef751ab5
commit 26737405f0

View File

@ -8,6 +8,11 @@ DESCRIPTION:
DO NOT make indentation or excessive empty lines in the code that is executed by ISQL. DO NOT make indentation or excessive empty lines in the code that is executed by ISQL.
JIRA: CORE-6385 JIRA: CORE-6385
FBTEST: bugs.core_6385 FBTEST: bugs.core_6385
NOTES:
[13.12.2023] pzotov
Added 'SQLSTATE' in substitutions: runtime error must not be filtered out by '?!(...)' pattern
("negative lookahead assertion", see https://docs.python.org/3/library/re.html#regular-expression-syntax).
Added 'combine_output = True' in order to see SQLSTATE if any error occurs.
""" """
import pytest import pytest
@ -16,27 +21,28 @@ from firebird.qa import *
db = db_factory() db = db_factory()
test_script = """ test_script = """
set term ^; set term ^;
execute block execute block
as as
declare n integer; declare n integer;
begin begin
if (1 = 1) then if (1 = 1) then
n = 1; n = 1;
n = n / 0; n = n / 0;
end^ end^
set term ;^ set term ;^
""" """
act = isql_act('db', test_script, substitutions=[('^((?!At\\s+block\\s+line).)*$', ''), act = isql_act('db', test_script, substitutions=[('^((?!SQLSTATE|(At\\s+block\\s+line)).)*$', ''),
('[ \t]+', ' ')]) ('[ \t]+', ' ')])
expected_stderr = """ expected_stdout = """
-At block line: 7, col: 5 Statement failed, SQLSTATE = 22012
-At block line: 7, col: 9
""" """
@pytest.mark.version('>=4.0') @pytest.mark.version('>=4.0')
def test_1(act: Action): def test_1(act: Action):
act.expected_stderr = expected_stderr act.expected_stdout = expected_stdout
act.execute() act.execute(combine_output = True)
assert act.clean_stderr == act.clean_expected_stderr assert act.clean_stdout == act.clean_expected_stdout