Esempio n. 1
0
 def testAllTableNamesMatchClassNames(self):
     for schema_module in ALL_SCHEMA_MODULES:
         for cls in get_all_table_classes_in_module(schema_module):
             table_name = cls.__tablename__
             table_name_to_capital_case = table_name.title().replace(
                 "_", "")
             self.assertEqual(
                 table_name_to_capital_case, cls.__name__,
                 f'Table class {cls.__name__} does not have matching table '
                 f'name: {table_name}')
Esempio n. 2
0
 def testNoRepeatTableClassNames(self):
     table_class_names_set = set()
     for schema_module in ALL_SCHEMA_MODULES:
         table_classes = get_all_table_classes_in_module(schema_module)
         for cls in table_classes:
             table_class_name = cls.__name__
             self.assertNotIn(
                 table_class_name, table_class_names_set,
                 f'Table name [{table_class_name}] defined in '
                 f'[{schema_module}]) already exists.')
Esempio n. 3
0
 def testDatabaseEntityFunctionality(self):
     for schema_module in ALL_SCHEMA_MODULES:
         for cls in get_all_table_classes_in_module(schema_module):
             primary_key_col_name = cls.get_primary_key_column_name()
             self.assertIsNotNone(primary_key_col_name)
             primary_key_prop_name = cls.get_column_property_names()
             self.assertTrue(len(primary_key_prop_name) > 0)
             self.assertTrue(primary_key_col_name in primary_key_prop_name)
             # Just should not crash
             cls.get_relationship_property_names()
             cls.get_relationship_property_names_and_properties()
    def _get_all_non_history_schema_object_type_names_in_module(
            schema: ModuleType) -> Set[str]:

        all_table_classes = get_all_table_classes_in_module(schema)
        expected_schema_object_types: Set[str] = set()
        for table_class in all_table_classes:
            class_name = table_class.__name__
            if not class_name.endswith(HISTORICAL_TABLE_CLASS_SUFFIX):
                expected_schema_object_types.add(class_name)

        return expected_schema_object_types
Esempio n. 5
0
 def testNoRepeatTableNames(self):
     table_names_set = set()
     for schema_module in ALL_SCHEMA_MODULES:
         table_classes = get_all_table_classes_in_module(schema_module)
         for table in table_classes:
             table_name = table.name
             self.assertNotIn(
                 table_name,
                 table_names_set,
                 f'Table name [{table_name}] defined in [{schema_module}]) '
                 f'already exists.'
             )
             table_names_set.add(table_name)
Esempio n. 6
0
 def testAllTableNamesPrefixedWithState(self):
     for cls in get_all_table_classes_in_module(schema):
         self.assertTrue(cls.name.startswith('state_'))