1
# Copyright (C) 2009, 2010 Canonical Ltd
1
# Copyright (C) 2009, 2010, 2011 Canonical Ltd
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
39
37
result = loader.suiteClass()
41
39
(name, {'merge_type': merger})
42
for name, merger in option._merge_type_registry.items()]
40
for name, merger in _mod_merge.merge_type_registry.items()]
43
41
return multiply_tests(standard_tests, scenarios, result)
176
174
transform.finalize()
177
175
return (limbodir, deletiondir)
179
def test_merge_with_existing_limbo(self):
180
wt = self.make_branch_and_tree('this')
181
(limbodir, deletiondir) = self.get_limbodir_deletiondir(wt)
177
def test_merge_with_existing_limbo_empty(self):
178
"""Empty limbo dir is just cleaned up - see bug 427773"""
179
wt = self.make_branch_and_tree('this')
180
(limbodir, deletiondir) = self.get_limbodir_deletiondir(wt)
182
self.do_merge(wt, wt)
184
def test_merge_with_existing_limbo_non_empty(self):
185
wt = self.make_branch_and_tree('this')
186
(limbodir, deletiondir) = self.get_limbodir_deletiondir(wt)
188
os.mkdir(os.path.join(limbodir, 'something'))
183
189
self.assertRaises(errors.ExistingLimbo, self.do_merge, wt, wt)
184
190
self.assertRaises(errors.LockError, wt.unlock)
186
def test_merge_with_pending_deletion(self):
187
wt = self.make_branch_and_tree('this')
188
(limbodir, deletiondir) = self.get_limbodir_deletiondir(wt)
189
os.mkdir(deletiondir)
192
def test_merge_with_pending_deletion_empty(self):
193
wt = self.make_branch_and_tree('this')
194
(limbodir, deletiondir) = self.get_limbodir_deletiondir(wt)
195
os.mkdir(deletiondir)
196
self.do_merge(wt, wt)
198
def test_merge_with_pending_deletion_non_empty(self):
199
"""Also see bug 427773"""
200
wt = self.make_branch_and_tree('this')
201
(limbodir, deletiondir) = self.get_limbodir_deletiondir(wt)
202
os.mkdir(deletiondir)
203
os.mkdir(os.path.join(deletiondir, 'something'))
190
204
self.assertRaises(errors.ExistingPendingDeletion, self.do_merge, wt, wt)
191
205
self.assertRaises(errors.LockError, wt.unlock)