updated internal.rb and spec based on MR feedback
This commit is contained in:
parent
5c271ee95f
commit
c401e8338b
|
@ -16,7 +16,7 @@ module API
|
|||
#
|
||||
|
||||
helpers do
|
||||
def wiki
|
||||
def wiki?
|
||||
@wiki ||= params[:project].end_with?('.wiki') &&
|
||||
!Project.find_with_namespace(params[:project])
|
||||
end
|
||||
|
@ -38,12 +38,12 @@ module API
|
|||
# Strip out the .wiki from the pathname before finding the
|
||||
# project. This applies the correct project permissions to
|
||||
# the wiki repository as well.
|
||||
project_path.chomp!('.wiki') if wiki
|
||||
project_path.chomp!('.wiki') if wiki?
|
||||
|
||||
project = Project.find_with_namespace(project_path)
|
||||
|
||||
access =
|
||||
if wiki
|
||||
if wiki?
|
||||
Gitlab::GitAccessWiki.new(actor, project)
|
||||
else
|
||||
Gitlab::GitAccess.new(actor, project)
|
||||
|
|
|
@ -6,6 +6,8 @@ describe API::API, api: true do
|
|||
let(:key) { create(:key, user: user) }
|
||||
let(:project) { create(:project) }
|
||||
let(:secret_token) { File.read Gitlab.config.gitlab_shell.secret_file }
|
||||
# Project with path ending in .wiki
|
||||
let(:project_wiki) { create(:project, name: 'my.wiki', path: 'my.wiki') }
|
||||
|
||||
describe "GET /internal/check", no_db: true do
|
||||
it do
|
||||
|
@ -55,9 +57,13 @@ describe API::API, api: true do
|
|||
end
|
||||
|
||||
context "git push with project.wiki" do
|
||||
let(:project) { create(:project, name: 'my.wiki', path: 'my.wiki') }
|
||||
|
||||
before do
|
||||
project_wiki.team << [user, :developer]
|
||||
end
|
||||
|
||||
it do
|
||||
push(key, project)
|
||||
push(key, project_wiki)
|
||||
|
||||
expect(response.status).to eq(200)
|
||||
expect(json_response["status"]).to be_truthy
|
||||
|
|
Loading…
Reference in New Issue