def test_inline_diff_same(self): value = RichTextValue(u'foo') diff = CMFDTHtmlDiff(DummyType(value), DummyType(value), 'body') inline_diff = diff.inline_diff() self.assertTrue(IDifference.providedBy(diff)) self.assertEqual(diff.same, True) self.assertEqual(inline_diff, u'foo ')
def test_inline_diff_different(self): old_value = RichTextValue(u'foo') new_value = RichTextValue(u'foo bar') diff = CMFDTHtmlDiff(DummyType(old_value), DummyType(new_value), 'body') inline_diff = diff.inline_diff() self.assertTrue(IDifference.providedBy(diff)) self.assertEqual(diff.same, False) self.assertEqual(inline_diff, u'foo <span class="insert">bar </span> ')
def test_inline_diff_different(self): old_value = RichTextValue(u'foo') new_value = RichTextValue(u'foo bar') diff = CMFDTHtmlDiff( DummyType(old_value), DummyType(new_value), 'body') inline_diff = diff.inline_diff() self.assertTrue(IDifference.providedBy(diff)) self.assertEqual(diff.same, False) self.assertEqual(inline_diff, u'foo <span class="insert">bar </span> ')
def _parseField(self, value, filename=None): """Parse the field using the raw value from RichTextValue.""" if value is None: value = '' else: value = value.raw return CMFDTHtmlDiff._parseField(self, value, filename)
def _parseField(self, value, filename=None): if not value: value = '' else: value = value.raw # the output here is unicode, it is unclear if CMFDTHtmlDiff can # handle that directly, but it seems to work. Keep eyes open for # encoding/decoding errors. return CMFDTHtmlDiff._parseField(self, value, filename)
def test_parseField_value_is_not_none(self): value = RichTextValue(u'foo') diff = CMFDTHtmlDiff(DummyType(value), DummyType(value), 'body') self.assertEqual(diff._parseField(value), [u'foo'])
def test_parseField_value_is_none(self): value = None diff = CMFDTHtmlDiff(DummyType(value), DummyType(value), 'body') self.assertEqual(diff._parseField(value), [])