def test_get_reporting_tables(self): """Test that the report schema is populated with a column map.""" tables = self.accessor.get_base().classes report_schema = ReportSchema(tables, self.column_map) report_schema._set_reporting_tables( tables, self.accessor.column_map ) for table in self.all_tables: self.assertIsNotNone(getattr(report_schema, table)) self.assertTrue(hasattr(report_schema, 'column_types')) column_types = report_schema.column_types for table in self.all_tables: self.assertIn(table, column_types) table_types = column_types[random.choice(self.all_tables)] python_types = list(types.__builtins__.values()) python_types.extend([datetime.datetime, Decimal]) for table_type in table_types.values(): self.assertIn(table_type, python_types)
def test_get_reporting_tables(self): """Test that the report schema is populated with a column map.""" tables = django.apps.apps.get_models() report_schema = ReportSchema(tables) report_schema._set_reporting_tables(tables) for table in self.all_tables: self.assertIsNotNone(getattr(report_schema, table)) self.assertTrue(hasattr(report_schema, "column_types")) column_types = report_schema.column_types for table in self.all_tables: self.assertIn(table, column_types) table_types = column_types[random.choice(self.all_tables)] django_field_types = [ "IntegerField", "FloatField", "JSONField", "DateTimeField", "DecimalField", "CharField", "TextField", "PositiveIntegerField", ] for table_type in table_types.values(): self.assertIn(table_type, django_field_types)