Commit c401e833 authored by James Lopez's avatar James Lopez

updated internal.rb and spec based on MR feedback

parent 5c271ee9
...@@ -16,7 +16,7 @@ module API ...@@ -16,7 +16,7 @@ module API
# #
helpers do helpers do
def wiki def wiki?
@wiki ||= params[:project].end_with?('.wiki') && @wiki ||= params[:project].end_with?('.wiki') &&
!Project.find_with_namespace(params[:project]) !Project.find_with_namespace(params[:project])
end end
...@@ -38,12 +38,12 @@ module API ...@@ -38,12 +38,12 @@ module API
# Strip out the .wiki from the pathname before finding the # Strip out the .wiki from the pathname before finding the
# project. This applies the correct project permissions to # project. This applies the correct project permissions to
# the wiki repository as well. # the wiki repository as well.
project_path.chomp!('.wiki') if wiki project_path.chomp!('.wiki') if wiki?
project = Project.find_with_namespace(project_path) project = Project.find_with_namespace(project_path)
access = access =
if wiki if wiki?
Gitlab::GitAccessWiki.new(actor, project) Gitlab::GitAccessWiki.new(actor, project)
else else
Gitlab::GitAccess.new(actor, project) Gitlab::GitAccess.new(actor, project)
......
...@@ -6,6 +6,8 @@ describe API::API, api: true do ...@@ -6,6 +6,8 @@ describe API::API, api: true do
let(:key) { create(:key, user: user) } let(:key) { create(:key, user: user) }
let(:project) { create(:project) } let(:project) { create(:project) }
let(:secret_token) { File.read Gitlab.config.gitlab_shell.secret_file } 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 describe "GET /internal/check", no_db: true do
it do it do
...@@ -55,9 +57,13 @@ describe API::API, api: true do ...@@ -55,9 +57,13 @@ describe API::API, api: true do
end end
context "git push with project.wiki" do 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 it do
push(key, project) push(key, project_wiki)
expect(response.status).to eq(200) expect(response.status).to eq(200)
expect(json_response["status"]).to be_truthy expect(json_response["status"]).to be_truthy
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment