168
167
    def prepare_lightweight_switch(self):
 
169
168
        branch = self.make_branch('branch')
 
170
169
        branch.create_checkout('tree', lightweight=True)
 
171
 
        osutils.rename('branch', 'branch1')
 
 
170
        os.rename('branch', 'branch1')
 
173
172
    def test_switch_lightweight_after_branch_moved(self):
 
174
173
        self.prepare_lightweight_switch()
 
 
226
225
        self.run_bzr('switch -b foo:branch2', working_dir='tree')
 
227
226
        tree = WorkingTree.open('tree')
 
228
227
        self.assertEndsWith(tree.branch.base, 'foo-branch2/')
 
230
 
    def test_switch_with_post_switch_hook(self):
 
231
 
        from bzrlib import branch as _mod_branch
 
233
 
        _mod_branch.Branch.hooks.install_named_hook('post_switch',
 
235
 
        self.make_branch_and_tree('branch')
 
236
 
        self.run_bzr('branch branch branch2')
 
237
 
        self.run_bzr('checkout branch checkout')
 
239
 
        self.assertLength(0, calls)
 
240
 
        out, err = self.run_bzr('switch ../branch2')
 
241
 
        self.assertLength(1, calls)
 
243
 
    def test_switch_lightweight_co_with_post_switch_hook(self):
 
244
 
        from bzrlib import branch as _mod_branch
 
246
 
        _mod_branch.Branch.hooks.install_named_hook('post_switch',
 
248
 
        self.make_branch_and_tree('branch')
 
249
 
        self.run_bzr('branch branch branch2')
 
250
 
        self.run_bzr('checkout --lightweight branch checkout')
 
252
 
        self.assertLength(0, calls)
 
253
 
        out, err = self.run_bzr('switch ../branch2')
 
254
 
        self.assertLength(1, calls)