#coding:utf-8 """ ID: issue-6409 ISSUE: 6409 TITLE: SUBSTRING of non-text/-blob is described to return NONE character set in DSQL DESCRIPTION: Confirmed output of: ' ... charset: 0 NONE' on 4.0.0.1627. Works as described in the ticket since 4.0.0.1632 ('... charset: 2 ASCII'). NOTE. In the 'substitution' section we remove all rows except line with phrase 'charset' in it. Furter, we have to remove digital ID for this charset because it can be changed in the future: 'charset: 2 ASCII' --> 'charset: ASCII' JIRA: CORE-6160 FBTEST: bugs.core_6160 """ import pytest from firebird.qa import * db = db_factory() test_script = """ -- 01: sqltype: 448 VARYING scale: 0 subtype: 0 len: 1 charset: 2 ASCII set sqlda_display on; set planonly; select substring(1 from 1 for 1) from rdb$database; select substring(current_date from 1 for 1) from rdb$database; """ act = isql_act('db', test_script, substitutions=[('^((?!charset).)*$', ''), ('[ \t]+', ' '), ('.*charset: [\\d]+', 'charset:')]) expected_stdout = """ charset: ASCII charset: ASCII """ @pytest.mark.version('>=4.0') def test_1(act: Action): act.expected_stdout = expected_stdout act.execute() assert act.clean_stdout == act.clean_expected_stdout