def _diff_numbers(self, level):
        """Diff Numbers"""
        t1_type = "number" if self.ignore_numeric_type_changes else level.t1.__class__.__name__
        t2_type = "number" if self.ignore_numeric_type_changes else level.t2.__class__.__name__

        if self.rel_err is not None:
            if self.relative_error(level.t1, level.t2, self.rel_err):
                self._report_result('values_changed', level)
        elif self.abs_err is not None:
            if self.absolute_error(level.t1, level.t2, self.abs_err):
                self._report_result('values_changed', level)
        else:
            DeepDiff._diff_numbers(self, level)
Beispiel #2
0
    def _diff_numbers(self, level):
        """Diff Numbers"""
        t1_type = "number" if self.ignore_numeric_type_changes else level.t1.__class__.__name__
        t2_type = "number" if self.ignore_numeric_type_changes else level.t2.__class__.__name__

        x = level.t1
        y = level.t2
        if self.abs_zero is not None:
            x = 0 if abs(x) < self.abs_zero else x
            y = 0 if abs(y) < self.abs_zero else y

        if self.rel_err is not None:
            if self.relative_error(x, y, self.rel_err):
                self._report_result('values_changed', level)
        elif self.abs_err is not None:
            if self.absolute_error(x, y, self.abs_err):
                self._report_result('values_changed', level)
        else:
            DeepDiff._diff_numbers(self, level)