Ejemplo n.º 1
0
    def _test_diff_bool(self, b1, b2, same):
        diff = AsTextDiff(BoolDummyType(b1), BoolDummyType(b2), 'bool_field')

        self.assertTrue(IDifference.providedBy(diff))
        self.assertEqual(diff.same, same)

        inline_diff = diff.inline_diff()
        if same:
            self.assertFalse(inline_diff)
        else:
            self.assertTrue(('True' in inline_diff)
                            or ('False' in inline_diff))
Ejemplo n.º 2
0
    def _test_diff_bool(self, b1, b2, same):
        diff = AsTextDiff(BoolDummyType(b1), BoolDummyType(b2), 'bool_field')

        self.assertTrue(IDifference.providedBy(diff))
        self.assertEqual(diff.same, same)

        inline_diff = diff.inline_diff()
        if same:
            self.assertFalse(inline_diff)
        else:
            self.assertTrue(
                ('True' in inline_diff) or ('False' in inline_diff))
Ejemplo n.º 3
0
    def _test_diff_date(self, d1, d2, same):
        diff = AsTextDiff(DateDummyType(d1), DateDummyType(d2), 'date')
        self.assertTrue(IDifference.providedBy(diff))
        self.assertEqual(diff.same, same)

        inline_diff = diff.inline_diff()
        if same:
            self.assertFalse(inline_diff)
        else:
            self.assertTrue(inline_diff)
            if d1 is not None:
                self.assertTrue(str(d1) in inline_diff)
            if d2 is not None:
                self.assertTrue(str(d2) in inline_diff)
Ejemplo n.º 4
0
    def _test_diff_date(self, d1, d2, same):
        diff = AsTextDiff(DateDummyType(d1), DateDummyType(d2), 'date')
        self.assertTrue(IDifference.providedBy(diff))
        self.assertEqual(diff.same, same)

        inline_diff = diff.inline_diff()
        if same:
            self.assertFalse(inline_diff)
        else:
            self.assertTrue(inline_diff)
            if d1 is not None:
                self.assertTrue(str(d1) in inline_diff)
            if d2 is not None:
                self.assertTrue(str(d2) in inline_diff)
Ejemplo n.º 5
0
    def _parseField(self, value, filename=None):
        if value is None:
            value = ''
        elif self._vocabulary is not None:
            value = title_or_value(self._vocabulary, value)

        return AsTextDiff._parseField(self, value, filename)
Ejemplo n.º 6
0
    def __init__(self, obj1, obj2, field, id1=None, id2=None, field_name=None,
                 field_label=None, schemata=None):
        AsTextDiff.__init__(self, obj1, obj2, field, id1, id2, field_name,
                            field_label, schemata)
        self._vocabulary = None

        # Tries to find a vocabulary. First we need to find an object and
        # the field instance.
        obj = obj1 if (obj1 is not None) else obj2
        field_name = field_name or field
        field_instance = (
            get_field_object(obj, field_name) if (obj and field_name)
            else None
        )

        if field_instance is not None:
            # Binding the field to an object will construct the vocabulary
            # using a factory if necessary.
            self._vocabulary = field_instance.bind(obj).vocabulary