diff --git a/py_dbcn/connectors/core/display.py b/py_dbcn/connectors/core/display.py index d2f8080ba40d919417b41a88930bf99144b6bb3e..c118b6f8a8ae10b12a8c7e9c5a2ad157ba8e3991 100644 --- a/py_dbcn/connectors/core/display.py +++ b/py_dbcn/connectors/core/display.py @@ -256,7 +256,7 @@ class RecordDisplay: # Calculate column header values, using all columns. table_cols = [ x[0] - for x in self._base.tables.describe(table_name, display_query=False) + for x in self._base.tables.describe(table_name, display_query=False, display_results=False) ] else: select_clause = select_clause.split(',') @@ -269,7 +269,7 @@ class RecordDisplay: # Calculate column header values, filtered by select clause. table_cols = [ x[0] - for x in self._base.tables.describe(table_name, display_query=False) + for x in self._base.tables.describe(table_name, display_query=False, display_results=False) if x[0] in select_clause ] col_len_array = [] @@ -281,7 +281,8 @@ class RecordDisplay: table_col, table_name, self._base.validate._quote_column_format, - ) + ), + display_query=False, )[0][0] length = max(col_len, record_len or 0) col_len_array.append(length) diff --git a/py_dbcn/connectors/core/tables.py b/py_dbcn/connectors/core/tables.py index 8118422d4294b463c71008a69fca3d4c39e166a1..d6eb49afb7ae9fa4c537afefbd5c45a29a449df0 100644 --- a/py_dbcn/connectors/core/tables.py +++ b/py_dbcn/connectors/core/tables.py @@ -66,10 +66,12 @@ class BaseTables: """ return self._get(display_query=display_query, display_results=True) - def describe(self, table_name, display_query=True): + def describe(self, table_name, display_query=True, display_results=True): """Describes given table in database. + :param table_name: Name of table to describe. :param display_query: Bool indicating if query should output to console. Defaults to True. + :param display_results: Bool indicating if results should output to console. Defaults to True. """ if not self._describe_table_query: raise ValueError('DESCRIBE TABLE query is not defined.') @@ -86,7 +88,8 @@ class BaseTables: # Generate and execute query. query = self._describe_table_query.format(table_name) results = self._base.query.execute(query, display_query=display_query) - self._base.display.tables.describe(results, logger) + if display_results: + self._base.display.tables.describe(results, logger) return results diff --git a/tests/connectors/core/test_display.py b/tests/connectors/core/test_display.py index d61954f468fc042334b285a2cb85bccff1335e09..c7c98cc4bcedd4205ff73120eff534e075b099c6 100644 --- a/tests/connectors/core/test_display.py +++ b/tests/connectors/core/test_display.py @@ -371,7 +371,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_1) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_1) with self.subTest('With 2 records present'): # Create record. @@ -381,7 +381,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_2) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_2) with self.subTest('With 3 records present'): # Create record. @@ -391,7 +391,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_3) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_3) with self.subTest('With 4 records present'): # Create record. @@ -401,7 +401,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_4) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_4) with self.subTest('With 5 records present'): # Create record. @@ -411,7 +411,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_5) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_5) with self.subTest('With 6 records present'): # Create record. @@ -421,7 +421,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_6) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_6) with self.subTest('With 7 records present'): # Create record. @@ -431,7 +431,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_7) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_7) with self.subTest('With 8 records present'): # Create record. @@ -441,7 +441,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_8) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_8) with self.subTest('With 9 records present'): # Create record. @@ -451,7 +451,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_9) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_9) with self.subTest('With 10 records present'): # Create record. @@ -461,7 +461,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_10) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_10) with self.subTest('With 11 records present'): # Create record. @@ -471,7 +471,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_11) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_11) with self.subTest('With 12 records present'): # Create record. @@ -481,7 +481,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_12) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_12) with self.subTest('With 13 records present'): # Create record. @@ -491,7 +491,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_13) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_13) with self.subTest('With 14 records present'): # Create record. @@ -501,7 +501,7 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_14) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_14) with self.subTest('With 15 records present'): # Create record. @@ -511,4 +511,4 @@ class CoreDisplayRecordsMixin: with self.assertLogs(None, 'INFO') as ilog: self.connector.records.select('category') self.assertText(self.get_logging_output(ilog, 0), 'SELECT * FROM category;') - self.assertText(self.get_logging_output(ilog, 5), self.expected_output.records.SELECT__PT_15) + self.assertText(self.get_logging_output(ilog, 1), self.expected_output.records.SELECT__PT_15)