From b7dffa44c92ce7a18f13504d5ad3f7b4d79ce57d 2011-03-04 04:25:48 From: Toshi MARUYAMA Date: 2011-03-04 04:25:48 Subject: [PATCH] scm: mercurial: update test repository for path encoding (#2664). Mercurial (and also Git) treats file names as byte string. This mercurial test repository contains Latin-1 encoding path. Be careful on non Latin-1(CP1252) Windows. If your Windows is not Latin-1 Windows, in order to checkout(update) Latin-1 path, You need to use cygwin 1.7 and set LANG=en_US.ISO-8859-1. Please refer. http://mercurial.selenic.com/wiki/EncodingStrategy?action=recall&rev=6 Redmine mercurial adapter do not need to checkout(update) repository. Mercurial does not have "bare" repository such as Git. You can use "hg update null" for equivalent "bare" repository. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4996 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/test/fixtures/repositories/mercurial_repository.hg b/test/fixtures/repositories/mercurial_repository.hg index c06844d235c3fad69b6e85f0b743f445f01f0cee..2b4eb62410643ae3c466665bab4f63dd0e7978e6 100644 GIT binary patch literal 8902 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 JoW;wO{tuNJ^$q|4 diff --git a/test/functional/repositories_mercurial_controller_test.rb b/test/functional/repositories_mercurial_controller_test.rb index f784d04..3960285 100644 --- a/test/functional/repositories_mercurial_controller_test.rb +++ b/test/functional/repositories_mercurial_controller_test.rb @@ -32,7 +32,11 @@ class RepositoriesMercurialControllerTest < ActionController::TestCase @request = ActionController::TestRequest.new @response = ActionController::TestResponse.new User.current = nil - @repository = Repository::Mercurial.create(:project => Project.find(3), :url => REPOSITORY_PATH) + @repository = Repository::Mercurial.create( + :project => Project.find(3), + :url => REPOSITORY_PATH, + :path_encoding => 'ISO-8859-1' + ) assert @repository @diff_c_support = true end diff --git a/test/unit/lib/redmine/scm/adapters/mercurial_adapter_test.rb b/test/unit/lib/redmine/scm/adapters/mercurial_adapter_test.rb index d275798..b562984 100644 --- a/test/unit/lib/redmine/scm/adapters/mercurial_adapter_test.rb +++ b/test/unit/lib/redmine/scm/adapters/mercurial_adapter_test.rb @@ -10,10 +10,19 @@ begin REPOSITORY_PATH = RAILS_ROOT.gsub(%r{config\/\.\.}, '') + '/tmp/test/mercurial_repository' + CHAR_1_HEX = "\xc3\x9c" + if File.directory?(REPOSITORY_PATH) def setup @adapter = Redmine::Scm::Adapters::MercurialAdapter.new(REPOSITORY_PATH) @diff_c_support = true + + @tag_char_1 = "tag-#{CHAR_1_HEX}-00" + @branch_char_1 = "branch-#{CHAR_1_HEX}-00" + if @tag_char_1.respond_to?(:force_encoding) + @tag_char_1.force_encoding('UTF-8') + @branch_char_1.force_encoding('UTF-8') + end end def test_hgversion @@ -49,7 +58,7 @@ begin adp = Redmine::Scm::Adapters::MercurialAdapter.new(repo) repo_path = adp.info.root_url.gsub(/\\/, "/") assert_equal REPOSITORY_PATH, repo_path - assert_equal '16', adp.info.lastrev.revision + assert_equal '24', adp.info.lastrev.revision assert_equal '4cddb4e45f52',adp.info.lastrev.scmid end end @@ -97,7 +106,7 @@ begin def test_diff_made_by_revision if @diff_c_support - [16, '16', '4cddb4e45f52'].each do |r1| + [24, '24', '4cddb4e45f52'].each do |r1| diff1 = @adapter.diff(nil, r1) assert_equal 5, diff1.size buf = diff1[4].gsub(/\r\n|\r|\n/, "") @@ -219,24 +228,32 @@ begin end def test_tags - assert_equal ['tag_test.00', 'tag-init-revision'], @adapter.tags + assert_equal [@tag_char_1, 'tag_test.00', 'tag-init-revision'], @adapter.tags end def test_tagmap - tm = { 'tag_test.00' => '6987191f453a', - 'tag-init-revision' => '0885933ad4f6' } + tm = { + @tag_char_1 => 'adf805632193', + 'tag_test.00' => '6987191f453a', + 'tag-init-revision' => '0885933ad4f6', + } assert_equal tm, @adapter.tagmap end def test_branches - assert_equal ['default', 'branch (1)[2]&,%.-3_4', 'test-branch-00'], - @adapter.branches + assert_equal ['default', @branch_char_1, + 'test_branch.latin-1', 'branch (1)[2]&,%.-3_4', 'test-branch-00'], + @adapter.branches end def test_branchmap - bm = { 'default' => '4cddb4e45f52', - 'branch (1)[2]&,%.-3_4' => '933ca60293d7', - 'test-branch-00' => '3a330eb32958' } + bm = { + 'default' => '4cddb4e45f52', + @branch_char_1 => 'c8d3e4887474', + 'test_branch.latin-1' => 'c2ffe7da686a', + 'branch (1)[2]&,%.-3_4' => '933ca60293d7', + 'test-branch-00' => '3a330eb32958' + } assert_equal bm, @adapter.branchmap end diff --git a/test/unit/repository_mercurial_test.rb b/test/unit/repository_mercurial_test.rb index 271ffe4..9c3032b 100644 --- a/test/unit/repository_mercurial_test.rb +++ b/test/unit/repository_mercurial_test.rb @@ -25,7 +25,11 @@ class RepositoryMercurialTest < ActiveSupport::TestCase def setup @project = Project.find(3) - @repository = Repository::Mercurial.create(:project => @project, :url => REPOSITORY_PATH) + @repository = Repository::Mercurial.create( + :project => @project, + :url => REPOSITORY_PATH, + :path_encoding => 'ISO-8859-1' + ) assert @repository end @@ -33,8 +37,8 @@ class RepositoryMercurialTest < ActiveSupport::TestCase def test_fetch_changesets_from_scratch @repository.fetch_changesets @repository.reload - assert_equal 17, @repository.changesets.count - assert_equal 25, @repository.changes.count + assert_equal 25, @repository.changesets.count + assert_equal 32, @repository.changes.count assert_equal "Initial import.\nThe repository contains 3 files.", @repository.changesets.find_by_revision('0').comments end @@ -47,7 +51,7 @@ class RepositoryMercurialTest < ActiveSupport::TestCase assert_equal 3, @repository.changesets.count @repository.fetch_changesets - assert_equal 17, @repository.changesets.count + assert_equal 25, @repository.changesets.count end def test_isodatesec @@ -170,7 +174,7 @@ class RepositoryMercurialTest < ActiveSupport::TestCase @repository.fetch_changesets @repository.reload changesets = @repository.latest_changesets('README', nil) - assert_equal %w|8 6 1 0|, changesets.collect(&:revision) + assert_equal %w|17 8 6 1 0|, changesets.collect(&:revision) path = 'sql_escape/percent%dir/percent%file1.txt' changesets = @repository.latest_changesets(path, nil)