@@ -29,6 +29,16 class RepositoriesGitControllerTest < ActionController::TestCase | |||||
29 | CHAR_1_HEX = "\xc3\x9c" |
|
29 | CHAR_1_HEX = "\xc3\x9c" | |
30 | NUM_REV = 28 |
|
30 | NUM_REV = 28 | |
31 |
|
31 | |||
|
32 | ## Ruby uses ANSI api to fork a process on Windows. | |||
|
33 | ## Japanese Shift_JIS and Traditional Chinese Big5 have 0x5c(backslash) problem | |||
|
34 | ## and these are incompatible with ASCII. | |||
|
35 | ## Git for Windows (msysGit) changed internal API from ANSI to Unicode in 1.7.10 | |||
|
36 | ## http://code.google.com/p/msysgit/issues/detail?id=80 | |||
|
37 | ## So, Latin-1 path tests fail on Japanese Windows | |||
|
38 | WINDOWS_PASS = (Redmine::Platform.mswin? && | |||
|
39 | Redmine::Scm::Adapters::GitAdapter.client_version_above?([1, 7, 10])) | |||
|
40 | WINDOWS_SKIP_STR = "TODO: This test fails in Git for Windows above 1.7.10" | |||
|
41 | ||||
32 | ## Git, Mercurial and CVS path encodings are binary. |
|
42 | ## Git, Mercurial and CVS path encodings are binary. | |
33 | ## Subversion supports URL encoding for path. |
|
43 | ## Subversion supports URL encoding for path. | |
34 | ## Redmine Mercurial adapter and extension use URL encoding. |
|
44 | ## Redmine Mercurial adapter and extension use URL encoding. | |
@@ -214,6 +224,8 class RepositoriesGitControllerTest < ActionController::TestCase | |||||
214 | def test_entry_show_latin_1 |
|
224 | def test_entry_show_latin_1 | |
215 | if @ruby19_non_utf8_pass |
|
225 | if @ruby19_non_utf8_pass | |
216 | puts_ruby19_non_utf8_pass() |
|
226 | puts_ruby19_non_utf8_pass() | |
|
227 | elsif WINDOWS_PASS | |||
|
228 | puts WINDOWS_SKIP_STR | |||
217 | elsif JRUBY_SKIP |
|
229 | elsif JRUBY_SKIP | |
218 | puts JRUBY_SKIP_STR |
|
230 | puts JRUBY_SKIP_STR | |
219 | else |
|
231 | else | |
@@ -435,6 +447,8 class RepositoriesGitControllerTest < ActionController::TestCase | |||||
435 | def test_annotate_latin_1 |
|
447 | def test_annotate_latin_1 | |
436 | if @ruby19_non_utf8_pass |
|
448 | if @ruby19_non_utf8_pass | |
437 | puts_ruby19_non_utf8_pass() |
|
449 | puts_ruby19_non_utf8_pass() | |
|
450 | elsif WINDOWS_PASS | |||
|
451 | puts WINDOWS_SKIP_STR | |||
438 | elsif JRUBY_SKIP |
|
452 | elsif JRUBY_SKIP | |
439 | puts JRUBY_SKIP_STR |
|
453 | puts JRUBY_SKIP_STR | |
440 | else |
|
454 | else |
@@ -13,8 +13,12 begin | |||||
13 | ## Ruby uses ANSI api to fork a process on Windows. |
|
13 | ## Ruby uses ANSI api to fork a process on Windows. | |
14 | ## Japanese Shift_JIS and Traditional Chinese Big5 have 0x5c(backslash) problem |
|
14 | ## Japanese Shift_JIS and Traditional Chinese Big5 have 0x5c(backslash) problem | |
15 | ## and these are incompatible with ASCII. |
|
15 | ## and these are incompatible with ASCII. | |
16 | # WINDOWS_PASS = Redmine::Platform.mswin? |
|
16 | ## Git for Windows (msysGit) changed internal API from ANSI to Unicode in 1.7.10 | |
17 | WINDOWS_PASS = false |
|
17 | ## http://code.google.com/p/msysgit/issues/detail?id=80 | |
|
18 | ## So, Latin-1 path tests fail on Japanese Windows | |||
|
19 | WINDOWS_PASS = (Redmine::Platform.mswin? && | |||
|
20 | Redmine::Scm::Adapters::GitAdapter.client_version_above?([1, 7, 10])) | |||
|
21 | WINDOWS_SKIP_STR = "TODO: This test fails in Git for Windows above 1.7.10" | |||
18 |
|
22 | |||
19 | ## Git, Mercurial and CVS path encodings are binary. |
|
23 | ## Git, Mercurial and CVS path encodings are binary. | |
20 | ## Subversion supports URL encoding for path. |
|
24 | ## Subversion supports URL encoding for path. | |
@@ -391,7 +395,7 begin | |||||
391 |
|
395 | |||
392 | def test_latin_1_path |
|
396 | def test_latin_1_path | |
393 | if WINDOWS_PASS |
|
397 | if WINDOWS_PASS | |
394 | # |
|
398 | puts WINDOWS_SKIP_STR | |
395 | elsif JRUBY_SKIP |
|
399 | elsif JRUBY_SKIP | |
396 | puts JRUBY_SKIP_STR |
|
400 | puts JRUBY_SKIP_STR | |
397 | else |
|
401 | else | |
@@ -453,7 +457,7 begin | |||||
453 |
|
457 | |||
454 | def test_entries_latin_1_dir |
|
458 | def test_entries_latin_1_dir | |
455 | if WINDOWS_PASS |
|
459 | if WINDOWS_PASS | |
456 | # |
|
460 | puts WINDOWS_SKIP_STR | |
457 | elsif JRUBY_SKIP |
|
461 | elsif JRUBY_SKIP | |
458 | puts JRUBY_SKIP_STR |
|
462 | puts JRUBY_SKIP_STR | |
459 | else |
|
463 | else |
@@ -34,8 +34,12 class RepositoryGitTest < ActiveSupport::TestCase | |||||
34 | ## Ruby uses ANSI api to fork a process on Windows. |
|
34 | ## Ruby uses ANSI api to fork a process on Windows. | |
35 | ## Japanese Shift_JIS and Traditional Chinese Big5 have 0x5c(backslash) problem |
|
35 | ## Japanese Shift_JIS and Traditional Chinese Big5 have 0x5c(backslash) problem | |
36 | ## and these are incompatible with ASCII. |
|
36 | ## and these are incompatible with ASCII. | |
37 | # WINDOWS_PASS = Redmine::Platform.mswin? |
|
37 | ## Git for Windows (msysGit) changed internal API from ANSI to Unicode in 1.7.10 | |
38 | WINDOWS_PASS = false |
|
38 | ## http://code.google.com/p/msysgit/issues/detail?id=80 | |
|
39 | ## So, Latin-1 path tests fail on Japanese Windows | |||
|
40 | WINDOWS_PASS = (Redmine::Platform.mswin? && | |||
|
41 | Redmine::Scm::Adapters::GitAdapter.client_version_above?([1, 7, 10])) | |||
|
42 | WINDOWS_SKIP_STR = "TODO: This test fails in Git for Windows above 1.7.10" | |||
39 |
|
43 | |||
40 | ## Git, Mercurial and CVS path encodings are binary. |
|
44 | ## Git, Mercurial and CVS path encodings are binary. | |
41 | ## Subversion supports URL encoding for path. |
|
45 | ## Subversion supports URL encoding for path. | |
@@ -400,7 +404,9 class RepositoryGitTest < ActiveSupport::TestCase | |||||
400 | '61b685fbe55ab05b5ac68402d5720c1a6ac973d1', |
|
404 | '61b685fbe55ab05b5ac68402d5720c1a6ac973d1', | |
401 | ], changesets.collect(&:revision) |
|
405 | ], changesets.collect(&:revision) | |
402 |
|
406 | |||
403 | if JRUBY_SKIP |
|
407 | if WINDOWS_PASS | |
|
408 | puts WINDOWS_SKIP_STR | |||
|
409 | elsif JRUBY_SKIP | |||
404 | puts JRUBY_SKIP_STR |
|
410 | puts JRUBY_SKIP_STR | |
405 | else |
|
411 | else | |
406 | # latin-1 encoding path |
|
412 | # latin-1 encoding path | |
@@ -421,7 +427,7 class RepositoryGitTest < ActiveSupport::TestCase | |||||
421 |
|
427 | |||
422 | def test_latest_changesets_latin_1_dir |
|
428 | def test_latest_changesets_latin_1_dir | |
423 | if WINDOWS_PASS |
|
429 | if WINDOWS_PASS | |
424 | # |
|
430 | puts WINDOWS_SKIP_STR | |
425 | elsif JRUBY_SKIP |
|
431 | elsif JRUBY_SKIP | |
426 | puts JRUBY_SKIP_STR |
|
432 | puts JRUBY_SKIP_STR | |
427 | else |
|
433 | else |
General Comments 0
You need to be logged in to leave comments.
Login now