Commit f8a4a760 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

decorate commits in Gitlab::Git::repository with valid class

parent e91ff84d
...@@ -54,11 +54,11 @@ module Gitlab ...@@ -54,11 +54,11 @@ module Gitlab
repo.commits(root_ref).first repo.commits(root_ref).first
end end
Commit.new(commit) if commit decorate_commit(commit) if commit
end end
def commits_with_refs(n = 20) def commits_with_refs(n = 20)
commits = repo.branches.map { |ref| Commit.new(ref.commit, ref) } commits = repo.branches.map { |ref| decorate_commit(ref.commit, ref) }
commits.sort! do |x, y| commits.sort! do |x, y|
y.committed_date <=> x.committed_date y.committed_date <=> x.committed_date
...@@ -74,11 +74,11 @@ module Gitlab ...@@ -74,11 +74,11 @@ module Gitlab
repo.commits(ref, limit, offset) repo.commits(ref, limit, offset)
else else
repo.commits(ref) repo.commits(ref)
end.map{ |c| Commit.new(c) } end.map{ |c| decorate_commit(c) }
end end
def commits_between(from, to) def commits_between(from, to)
repo.commits_between(from, to).map { |c| Commit.new(c) } repo.commits_between(from, to).map { |c| decorate_commit(c) }
end end
def last_commit_for(ref, path = nil) def last_commit_for(ref, path = nil)
...@@ -190,6 +190,12 @@ module Gitlab ...@@ -190,6 +190,12 @@ module Gitlab
def cache_key(type) def cache_key(type)
"#{type}:#{path_with_namespace}" "#{type}:#{path_with_namespace}"
end end
protected
def decorate_commit(commit, ref = nil)
Gitlab::Git::Commit.new(commit, ref)
end
end end
end end
end end
...@@ -82,6 +82,17 @@ describe Gitlab::Git::Repository do ...@@ -82,6 +82,17 @@ describe Gitlab::Git::Repository do
end end
end end
describe "commits" do
subject do
commits = repository.commits('master', 'app', 3, 1)
commits.map { |c| c.id }
end
it { should have(3).elements }
it { should include("8716fc78f3c65bbf7bcf7b574febd583bc5d2812") }
it { should_not include("bcf03b5de6c33f3869ef70d68cf06e679d1d7f9a") }
end
describe "commits_between" do describe "commits_between" do
subject do subject do
commits = repository.commits_between("3a4b4fb4cde7809f033822a171b9feae19d41fff", commits = repository.commits_between("3a4b4fb4cde7809f033822a171b9feae19d41fff",
......
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