Skip to content
Snippets Groups Projects
Commit 3f0233e5 authored by Alejandro Rodríguez's avatar Alejandro Rodríguez
Browse files

Create a Wiki Repository's raw_repository properly

parent 88d2517e
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -135,7 +135,7 @@ class ProjectWiki
end
 
def repository
@repository ||= Repository.new(full_path, @project, disk_path: disk_path)
@repository ||= Repository.new(full_path, @project, disk_path: disk_path, is_wiki: true)
end
 
def default_branch
Loading
Loading
Loading
Loading
@@ -17,7 +17,7 @@ class Repository
include Gitlab::ShellAdapter
include RepositoryMirroring
 
attr_accessor :full_path, :disk_path, :project
attr_accessor :full_path, :disk_path, :project, :is_wiki
 
delegate :ref_name_for_sha, to: :raw_repository
 
Loading
Loading
@@ -72,11 +72,12 @@ class Repository
end
end
 
def initialize(full_path, project, disk_path: nil)
def initialize(full_path, project, disk_path: nil, is_wiki: false)
@full_path = full_path
@disk_path = disk_path || full_path
@project = project
@commit_cache = {}
@is_wiki = is_wiki
end
 
def ==(other)
Loading
Loading
@@ -1141,7 +1142,7 @@ class Repository
end
 
def initialize_raw_repository
Gitlab::Git::Repository.new(project.repository_storage, disk_path + '.git', Gitlab::GlRepository.gl_repository(project, false))
Gitlab::Git::Repository.new(project.repository_storage, disk_path + '.git', Gitlab::GlRepository.gl_repository(project, is_wiki))
end
 
def find_commits_by_message_by_shelling_out(query, ref, path, limit, offset)
Loading
Loading
Loading
Loading
@@ -2298,4 +2298,24 @@ describe Repository do
project.commit_by(oid: '1' * 40)
end
end
describe '#raw_repository' do
subject { repository.raw_repository }
it 'returns a Gitlab::Git::Repository representation of the repository' do
expect(subject).to be_a(Gitlab::Git::Repository)
expect(subject.relative_path).to eq(project.disk_path + '.git')
expect(subject.gl_repository).to eq("project-#{project.id}")
end
context 'with a wiki repository' do
let(:repository) { project.wiki.repository }
it 'creates a Gitlab::Git::Repository with the proper attributes' do
expect(subject).to be_a(Gitlab::Git::Repository)
expect(subject.relative_path).to eq(project.disk_path + '.wiki.git')
expect(subject.gl_repository).to eq("wiki-#{project.id}")
end
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment