def test_filter_classes_with_only_simple_types(self, mock_class_should_generate): mock_class_should_generate.return_value = False classes = [ClassFactory.enumeration(2), ClassFactory.simple_type()] container = ClassContainer() container.extend(classes) container.filter_classes() self.assertEqual(classes, container.class_list)
def test_filter_classes(self, mock_class_should_generate): mock_class_should_generate.side_effect = [ True, False, False, True, False ] classes = ClassFactory.list(5) container = ClassContainer() container.extend(classes) expected = [ classes[0], classes[3], ] container.filter_classes() self.assertEqual(expected, container.class_list)
def process(cls, container: ClassContainer) -> List[Class]: """Run all the processes.""" # Run validation checks for duplicate, invalid and redefined types. ClassValidator(container).process() # Run analyzer handlers container.process() # Filter classes that should be generated. container.filter_classes() # Sanitize class attributes after merging and flattening types and extensions. ClassSanitizer(container).process() classes = container.class_list cls.validate_references(classes) return classes