20
from bzrlib.tests import TestCaseInTempDir
20
from bzrlib.selftest import TestCaseInTempDir
21
21
from bzrlib.branch import Branch
22
22
from bzrlib.commit import Commit
23
from bzrlib.conflicts import restore
24
from bzrlib.errors import NotConflicted
26
25
# TODO: Test commit with some added, and added-but-missing files
30
29
def test_conflicts(self):
31
30
"""Conflicts are detected properly"""
32
b = Branch.initialize(u'.')
33
file('hello', 'w').write('hello world4')
34
file('hello.THIS', 'w').write('hello world2')
35
file('hello.BASE', 'w').write('hello world1')
36
file('hello.OTHER', 'w').write('hello world3')
31
b = Branch.initialize('.')
32
file('hello', 'w').write('hello world')
33
file('hello.BASE', 'w').write('hello world')
37
34
file('hello.sploo.BASE', 'w').write('yellow world')
38
file('hello.sploo.OTHER', 'w').write('yellow world2')
39
35
tree = b.working_tree()
40
self.assertEqual(len(list(tree.list_files())), 6)
36
self.assertEqual(len(list(tree.list_files())), 3)
41
37
conflicts = list(tree.iter_conflicts())
42
38
self.assertEqual(len(conflicts), 2)
43
self.assert_('hello' in conflicts)
44
self.assert_('hello.sploo' in conflicts)
46
restore('hello.sploo')
39
assert 'hello' in conflicts
40
assert 'hello.sploo' in conflicts
41
os.unlink('hello.BASE')
42
os.unlink('hello.sploo.BASE')
47
43
self.assertEqual(len(list(tree.iter_conflicts())), 0)
48
self.assertFileEqual('hello world2', 'hello')
49
assert not os.path.lexists('hello.sploo')
50
self.assertRaises(NotConflicted, restore, 'hello')
51
self.assertRaises(NotConflicted, restore, 'hello.sploo')