summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@gitlab.com>2016-08-03 12:10:42 +0100
committerFatih Acet <acetfatih@gmail.com>2016-08-12 23:24:47 +0300
commit52eb523c9b28a258489202dd35a2a65535d31cab (patch)
tree7b8714d44e488aaa5b701d1772281a54c58c6ba2
parente50e88b85c54097db22d571cfc76fcef143e1d01 (diff)
downloadgitlab-ce-52eb523c9b28a258489202dd35a2a65535d31cab.tar.gz
Add blob_icon to conflict file JSON
-rw-r--r--lib/gitlab/conflict/file.rb6
-rw-r--r--spec/lib/gitlab/conflict/file_spec.rb4
2 files changed, 8 insertions, 2 deletions
diff --git a/lib/gitlab/conflict/file.rb b/lib/gitlab/conflict/file.rb
index 16727e752bd..1d63aec6903 100644
--- a/lib/gitlab/conflict/file.rb
+++ b/lib/gitlab/conflict/file.rb
@@ -2,18 +2,20 @@ module Gitlab
module Conflict
class File
include Gitlab::Routing.url_helpers
+ include IconsHelper
class MissingResolution < StandardError
end
CONTEXT_LINES = 3
- attr_reader :merge_file_result, :their_path, :our_path, :merge_request, :repository
+ attr_reader :merge_file_result, :their_path, :our_path, :our_mode, :merge_request, :repository
def initialize(merge_file_result, conflict, merge_request:)
@merge_file_result = merge_file_result
@their_path = conflict[:theirs][:path]
@our_path = conflict[:ours][:path]
+ @our_mode = conflict[:ours][:mode]
@merge_request = merge_request
@repository = merge_request.project.repository
end
@@ -30,7 +32,6 @@ module Gitlab
new_file = resolve_lines(resolution).map(&:text).join("\n")
oid = rugged.write(new_file, :blob)
- our_mode = index.conflict_get(our_path)[:ours][:mode]
index.add(path: our_path, oid: oid, mode: our_mode)
index.conflict_remove(our_path)
end
@@ -150,6 +151,7 @@ module Gitlab
{
old_path: their_path,
new_path: our_path,
+ blob_icon: file_type_icon_class('file', our_mode, our_path),
blob_path: namespace_project_blob_path(merge_request.project.namespace,
merge_request.project,
::File.join(merge_request.diff_refs.head_sha, our_path)),
diff --git a/spec/lib/gitlab/conflict/file_spec.rb b/spec/lib/gitlab/conflict/file_spec.rb
index a57ca70672b..cf670b3182a 100644
--- a/spec/lib/gitlab/conflict/file_spec.rb
+++ b/spec/lib/gitlab/conflict/file_spec.rb
@@ -148,5 +148,9 @@ describe Gitlab::Conflict::File, lib: true do
expect(conflict_file.as_json[:blob_path]).
to eq("/#{project.namespace.to_param}/#{merge_request.project.to_param}/blob/#{our_commit.oid}/files/ruby/regex.rb")
end
+
+ it 'includes the blob icon for the file' do
+ expect(conflict_file.as_json[:blob_icon]).to eq('file-text-o')
+ end
end
end