diff options
| -rw-r--r-- | app/models/repository.rb | 6 | ||||
| -rw-r--r-- | spec/workers/git_garbage_collect_worker_spec.rb | 4 | 
2 files changed, 8 insertions, 2 deletions
| diff --git a/app/models/repository.rb b/app/models/repository.rb index 035f85a0b46..6ed33e0c268 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -90,6 +90,12 @@ class Repository      )    end +  # we need to have this method here because it is not cached in ::Git and +  # the method is called multiple times for every request +  def has_visible_content? +    branch_count > 0 +  end +    def inspect      "#<#{self.class.name}:#{@disk_path}>"    end diff --git a/spec/workers/git_garbage_collect_worker_spec.rb b/spec/workers/git_garbage_collect_worker_spec.rb index 6f9ddb6c63c..f7b67b8efc6 100644 --- a/spec/workers/git_garbage_collect_worker_spec.rb +++ b/spec/workers/git_garbage_collect_worker_spec.rb @@ -31,8 +31,8 @@ describe GitGarbageCollectWorker do            expect_any_instance_of(Repository).to receive(:after_create_branch).and_call_original            expect_any_instance_of(Repository).to receive(:branch_names).and_call_original +          expect_any_instance_of(Repository).to receive(:has_visible_content?).and_call_original            expect_any_instance_of(Gitlab::Git::Repository).to receive(:branch_count).and_call_original -          expect_any_instance_of(Gitlab::Git::Repository).to receive(:has_visible_content?).and_call_original            subject.perform(project.id, :gc, lease_key, lease_uuid)          end @@ -77,8 +77,8 @@ describe GitGarbageCollectWorker do              expect_any_instance_of(Repository).to receive(:after_create_branch).and_call_original              expect_any_instance_of(Repository).to receive(:branch_names).and_call_original +            expect_any_instance_of(Repository).to receive(:has_visible_content?).and_call_original              expect_any_instance_of(Gitlab::Git::Repository).to receive(:branch_count).and_call_original -            expect_any_instance_of(Gitlab::Git::Repository).to receive(:has_visible_content?).and_call_original              subject.perform(project.id)            end | 
