OSDN Git Service

scm: mercurial: add test of diff non ASCII path name in functional test.
authorToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Sat, 7 May 2011 13:35:31 +0000 (13:35 +0000)
committerToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Sat, 7 May 2011 13:35:31 +0000 (13:35 +0000)
TODO: this test fails in Ruby 1.9 and Encoding.default_external is not UTF-8.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5689 e93f8b46-1217-0410-a6f0-8f06a7374b81

test/functional/repositories_mercurial_controller_test.rb

index 6c2e6f0..734dbee 100644 (file)
@@ -277,15 +277,26 @@ class RepositoriesMercurialControllerTest < ActionController::TestCase
     end
 
     def test_diff_latin_1_path
-      [21, 'adf805632193'].each do |r1|
-        get :diff, :id => PRJ_ID, :rev => r1
-        assert_response :success
-        assert_template 'diff'
-        assert_tag :tag => 'th',
-                   :content => '2',
-                   :sibling => {:tag => 'td',
-                                :attributes => { :class => /diff_in/ },
-                                :content => /It is written in Python/ }
+      with_settings :repositories_encodings => 'UTF-8,ISO-8859-1' do
+        [21, 'adf805632193'].each do |r1|
+          get :diff, :id => PRJ_ID, :rev => r1
+          assert_response :success
+          assert_template 'diff'
+          assert_tag :tag => 'thead',
+                     :descendant => {
+                       :tag => 'th',
+                       :attributes => { :class => 'filename' } ,
+                       :content => /latin-1-dir\/test-#{@char_1}-2.txt/ ,
+                      },
+                     :sibling => {
+                       :tag => 'tbody',
+                       :descendant => {
+                          :tag => 'td',
+                          :attributes => { :class => /diff_in/ },
+                          :content => /It is written in Python/
+                       }
+                     }
+        end
       end
     end