mirror of
https://github.com/meineerde/redmine.git
synced 2025-12-19 15:01:14 +00:00
"View differences" buttons are shown in the repository page even without "Browse repository" permission (#30731).
Patch by Go MAEDA. git-svn-id: http://svn.redmine.org/redmine/trunk@18013 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
32dce42b71
commit
805aef85de
@ -20,7 +20,7 @@ end %>
|
||||
:repository_id => @repository.identifier_param, :path => to_path_param(path)},
|
||||
:method => :get
|
||||
) do %>
|
||||
<% show_diff = revisions.size > 1 %>
|
||||
<% show_diff = revisions.size > 1 && User.current.allowed_to?(:browse_repository, @repository.project) %>
|
||||
<%= submit_tag(l(:label_view_diff), :name => nil) if show_diff %>
|
||||
<table class="list changesets">
|
||||
<thead><tr>
|
||||
|
||||
@ -182,6 +182,25 @@ class RepositoriesControllerTest < Redmine::RepositoryControllerTest
|
||||
end
|
||||
end
|
||||
|
||||
def test_show_should_show_diff_button_depending_on_browse_repository_permission
|
||||
@request.session[:user_id] = 2
|
||||
role = Role.find(1)
|
||||
|
||||
role.add_permission! :browse_repository
|
||||
get :show, :params => {
|
||||
:id => 1
|
||||
}
|
||||
assert_response :success
|
||||
assert_select 'input[value="View differences"]'
|
||||
|
||||
role.remove_permission! :browse_repository
|
||||
get :show, :params => {
|
||||
:id => 1
|
||||
}
|
||||
assert_response :success
|
||||
assert_select 'input[value="View differences"]', :count => 0
|
||||
end
|
||||
|
||||
def test_revisions
|
||||
get :revisions, :params => {
|
||||
:id => 1,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user