Add wildcard matching to no-commit-to-branch hook so that commits can
be blocked on, for example, all release branches with 'release/*'
diff --git a/tests/no_commit_to_branch_test.py b/tests/no_commit_to_branch_test.py
index e978ba2..a83d8de 100644
--- a/tests/no_commit_to_branch_test.py
+++ b/tests/no_commit_to_branch_test.py
@@ -44,6 +44,19 @@
assert main(('--branch', 'b1', '--branch', 'b2'))
+def test_branch_wildcard_fail(temp_git_dir):
+ with temp_git_dir.as_cwd():
+ cmd_output('git', 'checkout', '-b', 'another/branch')
+ assert is_on_branch({'another/*'}) is True
+
+
+@pytest.mark.parametrize('branch_name', ('master', 'another/branch'))
+def test_branch_wildcard_multiple_branches_fail(temp_git_dir, branch_name):
+ with temp_git_dir.as_cwd():
+ cmd_output('git', 'checkout', '-b', branch_name)
+ assert main(('--branch', 'master', '--branch', 'another/*'))
+
+
def test_main_default_call(temp_git_dir):
with temp_git_dir.as_cwd():
cmd_output('git', 'checkout', '-b', 'anotherbranch')