From a302ee342cf259710157882abbc4d383cd728686 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Mon, 7 Sep 2015 16:53:23 +0300 Subject: [PATCH 1/1] tests: Use sqlite3.Binary() with the log files This is needed to avoid issues in some cases where 8-bit bytestrings may be present in the otherwise text debug log. Signed-off-by: Jouni Malinen --- tests/hwsim/run-tests.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tests/hwsim/run-tests.py b/tests/hwsim/run-tests.py index a1e8600..13e360b 100755 --- a/tests/hwsim/run-tests.py +++ b/tests/hwsim/run-tests.py @@ -18,6 +18,12 @@ import termios import logging logger = logging.getLogger() +try: + import sqlite3 + sqlite3_imported = True +except ImportError: + sqlite3_imported = False + scriptsdir = os.path.dirname(os.path.realpath(sys.modules[__name__].__file__)) sys.path.append(os.path.join(scriptsdir, '..', '..', 'wpaspy')) @@ -80,7 +86,7 @@ def add_log_file(conn, test, run, type, path): if contents is None: return sql = "INSERT INTO logs(test,run,type,contents) VALUES(?, ?, ?, ?)" - params = (test, run, type, contents) + params = (test, run, type, sqlite3.Binary(contents)) try: conn.execute(sql, params) conn.commit() @@ -231,7 +237,9 @@ def main(): sys.exit(2) if args.database: - import sqlite3 + if not sqlite3_imported: + print "No sqlite3 module found" + sys.exit(2) conn = sqlite3.connect(args.database) conn.execute('CREATE TABLE IF NOT EXISTS results (test,result,run,time,duration,build,commitid)') conn.execute('CREATE TABLE IF NOT EXISTS tests (test,description)') -- 2.1.4