Call the right hooks when removing branches
This ensures that Repository#rm_branch calls before_remove_branch/after_remove_branch instead of just 1 random cache expiration method.
This commit is contained in:
parent
cb5a5ba095
commit
177025b5dd
|
@ -144,7 +144,7 @@ class Repository
|
||||||
end
|
end
|
||||||
|
|
||||||
def rm_branch(user, branch_name)
|
def rm_branch(user, branch_name)
|
||||||
expire_branches_cache
|
before_remove_branch
|
||||||
|
|
||||||
branch = find_branch(branch_name)
|
branch = find_branch(branch_name)
|
||||||
oldrev = branch.try(:target)
|
oldrev = branch.try(:target)
|
||||||
|
@ -155,7 +155,7 @@ class Repository
|
||||||
rugged.branches.delete(branch_name)
|
rugged.branches.delete(branch_name)
|
||||||
end
|
end
|
||||||
|
|
||||||
expire_branches_cache
|
after_remove_branch
|
||||||
true
|
true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -359,10 +359,16 @@ class Repository
|
||||||
expire_branch_count_cache
|
expire_branch_count_cache
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Runs code before removing an existing branch.
|
||||||
|
def before_remove_branch
|
||||||
|
expire_branches_cache
|
||||||
|
end
|
||||||
|
|
||||||
# Runs code after an existing branch has been removed.
|
# Runs code after an existing branch has been removed.
|
||||||
def after_remove_branch
|
def after_remove_branch
|
||||||
expire_has_visible_content_cache
|
expire_has_visible_content_cache
|
||||||
expire_branch_count_cache
|
expire_branch_count_cache
|
||||||
|
expire_branches_cache
|
||||||
end
|
end
|
||||||
|
|
||||||
def method_missing(m, *args, &block)
|
def method_missing(m, *args, &block)
|
||||||
|
|
|
@ -648,4 +648,15 @@ describe Repository, models: true do
|
||||||
repository.expire_tag_count_cache
|
repository.expire_tag_count_cache
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe '#rm_branch' do
|
||||||
|
let(:user) { create(:user) }
|
||||||
|
|
||||||
|
it 'removes a branch' do
|
||||||
|
expect(repository).to receive(:before_remove_branch)
|
||||||
|
expect(repository).to receive(:after_remove_branch)
|
||||||
|
|
||||||
|
repository.rm_branch(user, 'feature')
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue