/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/blackbox/test_hooks.py

  • Committer: Marius Kruger
  • Date: 2010-07-10 21:28:56 UTC
  • mto: (5384.1.1 integration)
  • mto: This revision was merged to the branch mainline in revision 5385.
  • Revision ID: marius.kruger@enerweb.co.za-20100710212856-uq4ji3go0u5se7hx
* Update documentation
* add NEWS

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2008, 2009, 2011, 2012, 2016 Canonical Ltd
 
1
# Copyright (C) 2008 Canonical Ltd
2
2
#
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
16
16
 
17
17
"""Tests for commands related to hooks"""
18
18
 
19
 
from breezy.branch import Branch
20
 
from breezy.tests import TestCaseWithTransport
21
 
 
22
 
 
23
 
def _foo_hook():
24
 
    pass
 
19
from bzrlib.branch import Branch
 
20
from bzrlib.tests import TestCaseWithTransport
25
21
 
26
22
 
27
23
class TestHooks(TestCaseWithTransport):
29
25
    def _check_hooks_output(self, command_output, hooks):
30
26
        for hook_type in Branch.hooks:
31
27
            s = "\n  ".join(hooks.get(hook_type, ["<no hooks installed>"]))
32
 
            self.assertTrue("%s:\n    %s" % (hook_type, s) in command_output)
 
28
            self.assert_("%s:\n    %s" % (hook_type, s) in command_output)
33
29
 
34
30
    def test_hooks_with_no_hooks(self):
35
31
        self.make_branch('.')
40
36
 
41
37
    def test_hooks_with_unnamed_hook(self):
42
38
        self.make_branch('.')
43
 
 
44
39
        def foo(): return
45
 
        Branch.hooks.install_named_hook('post_push', foo, None)
 
40
        Branch.hooks.install_named_hook('set_rh', foo, None)
46
41
        out, err = self.run_bzr('hooks')
47
 
        self._check_hooks_output(out, {'post_push': ["No hook name"]})
 
42
        self._check_hooks_output(out, {'set_rh': ["No hook name"]})
48
43
 
49
44
    def test_hooks_with_named_hook(self):
50
45
        self.make_branch('.')
51
 
 
52
46
        def foo(): return
53
47
        name = "Foo Bar Hook"
54
 
        Branch.hooks.install_named_hook('post_push', foo, name)
 
48
        Branch.hooks.install_named_hook('set_rh', foo, name)
55
49
        out, err = self.run_bzr('hooks')
56
 
        self._check_hooks_output(out, {'post_push': [name]})
 
50
        self._check_hooks_output(out, {'set_rh': [name]})
57
51
 
58
52
    def test_hooks_no_branch(self):
59
53
        self.run_bzr('hooks')
60
 
 
61
 
    def test_hooks_lazy_with_unnamed_hook(self):
62
 
        self.make_branch('.')
63
 
 
64
 
        def foo(): return
65
 
        Branch.hooks.install_named_hook_lazy('post_push',
66
 
                                             'breezy.tests.blackbox.test_hooks',
67
 
                                             '_foo_hook',
68
 
                                             None)
69
 
        out, err = self.run_bzr('hooks')
70
 
        self._check_hooks_output(out, {'post_push': ["No hook name"]})
71
 
 
72
 
    def test_hooks_lazy_with_named_hook(self):
73
 
        self.make_branch('.')
74
 
 
75
 
        def foo(): return
76
 
        Branch.hooks.install_named_hook_lazy('post_push',
77
 
                                             'breezy.tests.blackbox.test_hooks',
78
 
                                             '_foo_hook',
79
 
                                             'hook has a name')
80
 
        out, err = self.run_bzr('hooks')
81
 
        self._check_hooks_output(out, {'post_push': ["hook has a name"]})