Changeset: fcbc1a5391ba for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/fcbc1a5391ba
Modified Files:
        testing/sqllogictest.py
Branch: Jul2021
Log Message:

Make --verbose option more verbose.


diffs (73 lines):

diff --git a/testing/sqllogictest.py b/testing/sqllogictest.py
--- a/testing/sqllogictest.py
+++ b/testing/sqllogictest.py
@@ -218,12 +218,15 @@ class SQLLogic:
                        expected_err_code=None,
                        expected_err_msg=None,
                        expected_rowcount=None,
-                       conn=None):
+                       conn=None,
+                       verbose=False):
         crs = conn.cursor() if conn else self.crs
         if skipidx.search(statement) is not None:
             # skip creation of ascending or descending index
             return ['statement', 'ok']
         try:
+            if verbose:
+                print(f'Executing:\n{err_stmt or statement}')
             affected_rowcount = crs.execute(statement)
         except (pymonetdb.Error, ValueError) as e:
             msg = e.args[0]
@@ -352,10 +355,12 @@ class SQLLogic:
                     sep = '|'
                 print('', file=self.out)
 
-    def exec_query(self, query, columns, sorting, pyscript, hashlabel, 
nresult, hash, expected, conn=None) -> bool:
+    def exec_query(self, query, columns, sorting, pyscript, hashlabel, 
nresult, hash, expected, conn=None, verbose=False) -> bool:
         err = False
         crs = conn.cursor() if conn else self.crs
         try:
+            if verbose:
+                print(f'Executing:\n{query}')
             crs.execute(query)
         except (pymonetdb.Error, ValueError) as e:
             self.query_error(query, 'query failed', e.args[0])
@@ -598,7 +603,7 @@ class SQLLogic:
                 self.raise_error('invalid connection parameters definition, 
username or password missing!')
         return res
 
-    def parse(self, f, approve=None):
+    def parse(self, f, approve=None, verbose=False):
         self.approve = approve
         self.initfile(f)
         if self.language == 'sql':
@@ -659,9 +664,9 @@ class SQLLogic:
                 if not skipping:
                     if is_copyfrom_stmt(statement):
                         stmt, stmt_less_data = prepare_copyfrom_stmt(statement)
-                        result = self.exec_statement(stmt, expectok, 
err_stmt=stmt_less_data, expected_err_code=expected_err_code, 
expected_err_msg=expected_err_msg, expected_rowcount=expected_rowcount, 
conn=conn)
+                        result = self.exec_statement(stmt, expectok, 
err_stmt=stmt_less_data, expected_err_code=expected_err_code, 
expected_err_msg=expected_err_msg, expected_rowcount=expected_rowcount, 
conn=conn, verbose=verbose)
                     else:
-                        result = self.exec_statement('\n'.join(statement), 
expectok, expected_err_code=expected_err_code, 
expected_err_msg=expected_err_msg, expected_rowcount=expected_rowcount, 
conn=conn)
+                        result = self.exec_statement('\n'.join(statement), 
expectok, expected_err_code=expected_err_code, 
expected_err_msg=expected_err_msg, expected_rowcount=expected_rowcount, 
conn=conn, verbose=verbose)
                     self.writeline(' '.join(result))
                 else:
                     self.writeline(stline)
@@ -707,7 +712,7 @@ class SQLLogic:
                         line = self.readline()
                     nresult = len(expected)
                 if not skipping:
-                    result1, result2 = self.exec_query('\n'.join(query), 
columns, sorting, pyscript, hashlabel, nresult, hash, expected, conn=conn)
+                    result1, result2 = self.exec_query('\n'.join(query), 
columns, sorting, pyscript, hashlabel, nresult, hash, expected, conn=conn, 
verbose=verbose)
                     self.writeline(' '.join(result1))
                     for line in query:
                         self.writeline(line)
@@ -763,7 +768,7 @@ if __name__ == '__main__':
             if opts.verbose:
                 print('now testing {}'. format(test))
             try:
-                sql.parse(test, approve=opts.approve)
+                sql.parse(test, approve=opts.approve, verbose=opts.verbose)
             except SQLLogicSyntaxError:
                 pass
         except BrokenPipeError:
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to