Exemplo n.º 1
0
    def compare(self, other, progress_bar):
        '''
        :type other: cts_core.metadata.metadata_container.EntitiesContainer
        :return: int
        '''
        cmp = Comparator(level=0)

        entities = set(self.keys())
        entities_other = set(other.keys())
        all = sorted(list(entities.union(entities_other)))
        both = entities.intersection(entities_other)

        fmt = "Entity: {entity}"
        for entity in all:
            if progress_bar is not None:
                progress_bar.set_label(entity)

            if entity in both:
                cmp.merge_result(self.__getitem__(entity).compare(other.__getitem__(entity)))
            elif entity in entities:
                cmp.set_not_equal()
                cmp.message_left(fmt.format(entity=entity))
                cmp.message_right('?')
                cmp.separator()
            else:
                cmp.set_not_equal()
                cmp.message_left('?')
                cmp.message_right(fmt.format(entity=entity))
                cmp.separator()

            if progress_bar is not None:
                progress_bar.make_progress()
        return cmp
Exemplo n.º 2
0
    def compare(self, other, progress_bar):
        '''
        :type other: cts_core.metadata.metadata_container.TypesContainer
        :return: cts_core.metadata.compare_result.CompareResult
        '''

        cmp = Comparator(level=0)

        types = set(self.keys())
        types_other = set(other.keys())
        all = sorted(list(types.union(types_other)))
        both = types.intersection(types_other)

        fmt = "Type: {type}"
        for type in all:
            if progress_bar is not None:
                progress_bar.set_label(type)

            if type in both:
                cmp.merge_result(self.__getitem__(type).compare(other.__getitem__(type)))
            elif type in types:
                cmp.set_not_equal()
                cmp.message_left(fmt.format(type=type))
                cmp.message_right('?')
                cmp.separator()
            else:
                cmp.set_not_equal()
                cmp.message_left('?')
                cmp.message_right(fmt.format(type=type))
                cmp.separator()

            if progress_bar is not None:
                progress_bar.make_progress()
        return cmp
Exemplo n.º 3
0
    def compare(self, other, progress_bar):
        '''
        :type other: cts_core.metadata.metadata_container.EntitiesContainer
        :return: int
        '''
        cmp = Comparator(level=0)

        entities = set(self.keys())
        entities_other = set(other.keys())
        all = sorted(list(entities.union(entities_other)))
        both = entities.intersection(entities_other)

        fmt = "Entity: {entity}"
        for entity in all:
            if progress_bar is not None:
                progress_bar.set_label(entity)

            if entity in both:
                cmp.merge_result(
                    self.__getitem__(entity).compare(
                        other.__getitem__(entity)))
            elif entity in entities:
                cmp.set_not_equal()
                cmp.message_left(fmt.format(entity=entity))
                cmp.message_right('?')
                cmp.separator()
            else:
                cmp.set_not_equal()
                cmp.message_left('?')
                cmp.message_right(fmt.format(entity=entity))
                cmp.separator()

            if progress_bar is not None:
                progress_bar.make_progress()
        return cmp
Exemplo n.º 4
0
    def compare(self, other, progress_bar):
        '''
        :type other: cts_core.metadata.metadata_container.TypesContainer
        :return: cts_core.metadata.compare_result.CompareResult
        '''

        cmp = Comparator(level=0)

        types = set(self.keys())
        types_other = set(other.keys())
        all = sorted(list(types.union(types_other)))
        both = types.intersection(types_other)

        fmt = "Type: {type}"
        for type in all:
            if progress_bar is not None:
                progress_bar.set_label(type)

            if type in both:
                cmp.merge_result(
                    self.__getitem__(type).compare(other.__getitem__(type)))
            elif type in types:
                cmp.set_not_equal()
                cmp.message_left(fmt.format(type=type))
                cmp.message_right('?')
                cmp.separator()
            else:
                cmp.set_not_equal()
                cmp.message_left('?')
                cmp.message_right(fmt.format(type=type))
                cmp.separator()

            if progress_bar is not None:
                progress_bar.make_progress()
        return cmp
Exemplo n.º 5
0
 def compare(self, other):
     """
     :type other: cts_core.metadata.model.metadata_types.complex_type.ComplexType
     :rtype: int
     """
     cmp = Comparator()
     cmp.message_both("Type: {type}".format(type=self.name))
     cmp.merge_result(
         self.compare_base_type(other, level=1),
         self.compare_properties(other, level=1),
         self.compare_annotations(other, level=1),
         self.compare_dynamic_property_patterns(other, level=1))
     cmp.separator()
     return cmp
Exemplo n.º 6
0
 def compare(self, other):
     """
     :type other: cts_core.metadata.model.entity.Entity
     :rtype: int
     """
     cmp = Comparator(level=0)
     cmp.message_both("Entity: {entity}".format(entity=self.name))
     cmp.merge_result(
         self.compare_base_type(other, level=1),
         self.compare_properties(other, level=1),
         self.compare_annotations(other, level=1),
         self.compare_dynamic_property_patterns(other, level=1))
     cmp.separator()
     return cmp
Exemplo n.º 7
0
 def compare(self, other):
     """
     :type other: cts_core.metadata.model.entity.Entity
     :rtype: int
     """
     cmp = Comparator(level=0)
     cmp.message_both("Entity: {entity}".format(entity=self.name))
     cmp.merge_result(
         self.compare_base_type(other, level=1),
         self.compare_properties(other, level=1),
         self.compare_annotations(other, level=1),
         self.compare_dynamic_property_patterns(other, level=1))
     cmp.separator()
     return cmp