def _attribute_name_map(self): """Get property to name mapping for object attributes.""" model = getattr(models.all_models, self.child_type, None) if not model: logger.warning("Exporting invalid snapshot model: %s", self.child_type) return {} aliases = AttributeInfo.gather_visible_aliases(model) aliases.update(self.CUSTOM_SNAPSHOT_ALIASES) if self.MAPPINGS_KEY in self.fields: aliases.update(self.SNAPSHOT_MAPPING_ALIASES) name_map = { key: value["display_name"] if isinstance(value, dict) else value for key, value in aliases.iteritems() } orderd_keys = AttributeInfo.get_column_order(name_map.keys()) return OrderedDict((key, name_map[key]) for key in orderd_keys)
def _attribute_name_map(self): """Get property to name mapping for object attributes.""" model = getattr(models.all_models, self.child_type, None) if not model: logger.warning("Exporting invalid snapshot model: %s", self.child_type) return {} aliases = AttributeInfo.gather_visible_aliases(model) aliases.update(AttributeInfo.get_acl_definitions(model)) aliases.update(self.CUSTOM_SNAPSHOT_ALIASES) if self.MAPPINGS_KEY in self.fields: aliases.update(self.SNAPSHOT_MAPPING_ALIASES) name_map = { key: value["display_name"] if isinstance(value, dict) else value for key, value in aliases.iteritems() } orderd_keys = AttributeInfo.get_column_order(name_map.keys()) return OrderedDict((key, name_map[key]) for key in orderd_keys)
def test_gather_visible_aliases(self): """Test gather visible aliases.""" class Child(object): # pylint: disable=too-few-public-methods _aliases = { "visible_child_normal": "normal", "visible_child_extended": { "display_name": "Extended", }, "child_filter_only": { "display_name": "Extended", "filter_only": True, }, } class Parent(Child): # pylint: disable=too-few-public-methods _aliases = { "visible_parent_normal": "normal", "visible_parent_extended": { "display_name": "Extended", }, "parent_filter_only": { "display_name": "Extended", "filter_only": True, }, } self.assertEqual( AttributeInfo.gather_visible_aliases(Parent), { "visible_parent_normal": "normal", "visible_parent_extended": { "display_name": "Extended", }, "visible_child_normal": "normal", "visible_child_extended": { "display_name": "Extended", }, } )
def test_gather_visible_aliases(self): """Test gather visible aliases.""" class Child(object): # pylint: disable=too-few-public-methods _aliases = { "visible_child_normal": "normal", "visible_child_extended": { "display_name": "Extended", }, "child_filter_only": { "display_name": "Extended", "filter_only": True, }, } class Parent(Child): # pylint: disable=too-few-public-methods _aliases = { "visible_parent_normal": "normal", "visible_parent_extended": { "display_name": "Extended", }, "parent_filter_only": { "display_name": "Extended", "filter_only": True, }, } self.assertEqual( AttributeInfo.gather_visible_aliases(Parent), { "visible_parent_normal": "normal", "visible_parent_extended": { "display_name": "Extended", }, "visible_child_normal": "normal", "visible_child_extended": { "display_name": "Extended", }, } )