Commit d6066870 authored by Kim Carlbäcker's avatar Kim Carlbäcker Committed by Douwe Maan

Fix encoding issue with Repository.ls_files

parent e54dd249
...@@ -18,7 +18,7 @@ module Gitlab ...@@ -18,7 +18,7 @@ module Gitlab
response = GitalyClient.call(@repository.storage, :commit_service, :list_files, request) response = GitalyClient.call(@repository.storage, :commit_service, :list_files, request)
response.flat_map do |msg| response.flat_map do |msg|
msg.paths.map { |d| d.dup.force_encoding(Encoding::UTF_8) } msg.paths.map { |d| EncodingHelper.encode!(d.dup) }
end end
end end
......
...@@ -1163,6 +1163,7 @@ describe Gitlab::Git::Repository, seed_helper: true do ...@@ -1163,6 +1163,7 @@ describe Gitlab::Git::Repository, seed_helper: true do
describe "#ls_files" do describe "#ls_files" do
let(:master_file_paths) { repository.ls_files("master") } let(:master_file_paths) { repository.ls_files("master") }
let(:utf8_file_paths) { repository.ls_files("ls-files-utf8") }
let(:not_existed_branch) { repository.ls_files("not_existed_branch") } let(:not_existed_branch) { repository.ls_files("not_existed_branch") }
it "read every file paths of master branch" do it "read every file paths of master branch" do
...@@ -1184,6 +1185,10 @@ describe Gitlab::Git::Repository, seed_helper: true do ...@@ -1184,6 +1185,10 @@ describe Gitlab::Git::Repository, seed_helper: true do
it "returns empty array when not existed branch" do it "returns empty array when not existed branch" do
expect(not_existed_branch.length).to equal(0) expect(not_existed_branch.length).to equal(0)
end end
it "returns valid utf-8 data" do
expect(utf8_file_paths.map { |file| file.force_encoding('utf-8') }).to all(be_valid_encoding)
end
end end
describe "#copy_gitattributes" do describe "#copy_gitattributes" do
......
xK
0EgNI|ADt*^ mZ qGčY8ZK7"Fc%oHD9rZLsMJ2=ACmeFgVxI9H2XJrp6;N8z??>+zWƏBÞ f}bN@K\SY iSC
\ No newline at end of file
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