18
18
from cStringIO import StringIO
21
from gi.repository import Gtk
21
23
from bzrlib import (
29
from bzrlib.tests.features import UnicodeFilenameFeature
30
except ImportError: # bzr < 2.5
31
from bzrlib.tests import UnicodeFilenameFeature
26
32
from bzrlib.merge_directive import MergeDirective2
28
34
from bzrlib.plugins.gtk.diff import (
31
38
iter_changes_to_status,
32
39
MergeDirectiveController,
41
from bzrlib.plugins.gtk.tests import MockMethod
35
45
=== modified file 'tests/test_diff.py'
36
46
--- tests/test_diff.py 2008-03-11 13:18:28 +0000
73
83
class TestDiffView(tests.TestCaseWithTransport):
75
85
def test_unicode(self):
76
self.requireFeature(tests.UnicodeFilenameFeature)
86
self.requireFeature(UnicodeFilenameFeature)
78
88
tree = self.make_branch_and_tree('tree')
79
89
self.build_tree([u'tree/\u03a9'])
84
94
view.show_diff(None)
86
96
start, end = buf.get_bounds()
87
text = buf.get_text(start, end)
97
text = buf.get_text(start, end, True)
88
98
self.assertContainsRe(text,
89
99
"=== added file '\xce\xa9'\n"
90
100
'--- .*\t1970-01-01 00:00:00 \\+0000\n'
109
class FakeDiffWidget(DiffWidget):
114
class TestDiffWidget(tests.TestCaseWithTransport):
116
def test_treeview_cursor_cb(self):
117
widget = FakeDiffWidget()
118
widget.set_diff_text_sections(
119
[('', None, 'patch1'), ('a', 'a', 'patch2')])
120
widget.treeview.set_cursor(Gtk.TreePath(path=1), None, False)
121
widget._treeview_cursor_cb(None)
122
self.assertTrue('patch2', widget.diff_view.buffer.props.text)
124
def test_treeview_cursor_cb_with_destroyed_treeview(self):
125
widget = FakeDiffWidget()
126
widget.set_diff_text_sections(
127
[('', None, 'patch1'), ('a', 'a', 'patch2')])
128
MockMethod.bind(self, widget.diff_view, 'show_diff')
129
widget.treeview.destroy()
130
widget._treeview_cursor_cb(None)
131
self.assertFalse(widget.diff_view.show_diff.called)
98
134
class MockDiffWidget(object):
100
136
def set_diff_text_sections(self, sections):