From 90f83db1488db08064102ff8991b259fdec8bfe2 Mon Sep 17 00:00:00 2001 From: Toshi MARUYAMA Date: Wed, 17 Aug 2011 08:16:23 +0000 Subject: [PATCH] Merged r6005 from trunk. scm: git: skip non UTF-8 path encoding test of unit model test in JRuby. Git, Mercurial and CVS path encodings are binary. Subversion supports URL encoding for path. Redmine Mercurial adapter and extension use URL encoding. Git accepts only binary path in command line parameter. So, there is no way to use binary command line parameter in JRuby. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/1.2-stable@6452 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- test/unit/repository_git_test.rb | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/test/unit/repository_git_test.rb b/test/unit/repository_git_test.rb index 3df02311d..e85941384 100644 --- a/test/unit/repository_git_test.rb +++ b/test/unit/repository_git_test.rb @@ -33,6 +33,14 @@ class RepositoryGitTest < ActiveSupport::TestCase # WINDOWS_PASS = Redmine::Platform.mswin? WINDOWS_PASS = false + ## Git, Mercurial and CVS path encodings are binary. + ## Subversion supports URL encoding for path. + ## Redmine Mercurial adapter and extension use URL encoding. + ## Git accepts only binary path in command line parameter. + ## So, there is no way to use binary command line parameter in JRuby. + JRUBY_SKIP = (RUBY_PLATFORM == 'java') + JRUBY_SKIP_STR = "TODO: This test fails in JRuby" + if File.directory?(REPOSITORY_PATH) def setup klass = Repository::Git @@ -308,24 +316,30 @@ class RepositoryGitTest < ActiveSupport::TestCase '61b685fbe55ab05b5ac68402d5720c1a6ac973d1', ], changesets.collect(&:revision) - # latin-1 encoding path - changesets = @repository.latest_changesets( - "latin-1-dir/test-#{@char_1}-2.txt", '64f1f3e89') - assert_equal [ + if JRUBY_SKIP + puts JRUBY_SKIP_STR + else + # latin-1 encoding path + changesets = @repository.latest_changesets( + "latin-1-dir/test-#{@char_1}-2.txt", '64f1f3e89') + assert_equal [ '64f1f3e89ad1cb57976ff0ad99a107012ba3481d', '4fc55c43bf3d3dc2efb66145365ddc17639ce81e', ], changesets.collect(&:revision) - changesets = @repository.latest_changesets( + changesets = @repository.latest_changesets( "latin-1-dir/test-#{@char_1}-2.txt", '64f1f3e89', 1) - assert_equal [ + assert_equal [ '64f1f3e89ad1cb57976ff0ad99a107012ba3481d', ], changesets.collect(&:revision) + end end def test_latest_changesets_latin_1_dir if WINDOWS_PASS # + elsif JRUBY_SKIP + puts JRUBY_SKIP_STR else @repository.fetch_changesets @repository.reload