From f3f7788b93d2c9589c1e9a1dff2bd76d5ac09b28 Mon Sep 17 00:00:00 2001 From: Scott Nemes Date: Sat, 7 Feb 2026 14:43:45 -0800 Subject: [PATCH] Added tests for hex/utf8 output --- test/test_main.py | 78 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/test/test_main.py b/test/test_main.py index 6b27dce8..a9cfffa4 100644 --- a/test/test_main.py +++ b/test/test_main.py @@ -41,6 +41,84 @@ ] +@dbtest +def test_binary_display_hex(executor, capsys): + m = MyCli() + m.sqlexecute = SQLExecute( + None, + USER, + PASSWORD, + HOST, + PORT, + None, + None, + None, + None, + None, + None, + None, + None, + None, + None, + ) + m.explicit_pager = False + sqlresult = next(m.sqlexecute.run("select b'01101010' AS binary_test")) + formatted = m.format_output( + sqlresult.title, + sqlresult.results, + sqlresult.headers, + False, + False, + "", + "right", + "hex", + None, + ) + m.output(formatted, sqlresult.status) + expected = "+-------------+\n| binary_test |\n+-------------+\n| 0x6a |\n+-------------+\n1 row in set\n" + stdout = capsys.readouterr().out + assert expected in stdout + + +@dbtest +def test_binary_display_utf8(executor, capsys): + m = MyCli() + m.sqlexecute = SQLExecute( + None, + USER, + PASSWORD, + HOST, + PORT, + None, + None, + None, + None, + None, + None, + None, + None, + None, + None, + ) + m.explicit_pager = False + sqlresult = next(m.sqlexecute.run("select b'01101010' AS binary_test")) + formatted = m.format_output( + sqlresult.title, + sqlresult.results, + sqlresult.headers, + False, + False, + "", + "right", + "utf8", + None, + ) + m.output(formatted, sqlresult.status) + expected = "+-------------+\n| binary_test |\n+-------------+\n| j |\n+-------------+\n1 row in set\n" + stdout = capsys.readouterr().out + assert expected in stdout + + @dbtest def test_select_from_empty_table(executor): run(executor, """create table t1(id int)""")