diff options
author | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2017-01-24 18:04:45 -0200 |
---|---|---|
committer | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2017-01-25 15:38:38 -0200 |
commit | 232b401429ea8269e5e187b304fd4c2ccd61e428 (patch) | |
tree | 2592247e3d2d81c173ce859978023ee182c457e8 /spec | |
parent | b55c1bc4b5fb8d259ba9f264eff607f81012fa39 (diff) | |
download | gitlab-ce-232b401429ea8269e5e187b304fd4c2ccd61e428.tar.gz |
Fix access to the wiki code via HTTP when repository feature disabled
Diffstat (limited to 'spec')
-rw-r--r-- | spec/requests/git_http_spec.rb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/spec/requests/git_http_spec.rb b/spec/requests/git_http_spec.rb index 5abda28e26f..6a5ad6deb74 100644 --- a/spec/requests/git_http_spec.rb +++ b/spec/requests/git_http_spec.rb @@ -55,6 +55,28 @@ describe 'Git HTTP requests', lib: true do expect(response.content_type.to_s).to eq(Gitlab::Workhorse::INTERNAL_API_CONTENT_TYPE) end end + + context 'but the repo is disabled' do + let(:project) { create(:project, repository_access_level: ProjectFeature::DISABLED, wiki_access_level: ProjectFeature::ENABLED) } + let(:wiki) { ProjectWiki.new(project) } + let(:path) { "/#{wiki.repository.path_with_namespace}.git" } + + before do + project.team << [user, :developer] + end + + it 'allows clones' do + download(path, user: user.username, password: user.password) do |response| + expect(response).to have_http_status(200) + end + end + + it 'allows pushes' do + upload(path, user: user.username, password: user.password) do |response| + expect(response).to have_http_status(200) + end + end + end end context "when the project exists" do |