# HG changeset patch # User Toshi MARUYAMA # Date 1586829444 -32400 # Tue Apr 14 10:57:24 2020 +0900 # Branch svn00 # Node ID 789abf2a2cef2ea50f414202dda5e10cc5f2dc32 # Parent 1b01dabb05ebdf433d29465f6f7b605e7266af11 scm: subversion: adjust tests (#24030) diff --git a/test/functional/repositories_controller_test.rb b/test/functional/repositories_controller_test.rb --- a/test/functional/repositories_controller_test.rb +++ b/test/functional/repositories_controller_test.rb @@ -188,7 +188,8 @@ class RepositoriesControllerTest < Redmi end end - if repository_configured?('subversion') + if repository_configured?('subversion') && + !(Redmine::Database::mysql? && !is_mysql_utf8mb4) def test_show_should_show_diff_button_depending_on_browse_repository_permission @request.session[:user_id] = 2 role = Role.find(1) diff --git a/test/functional/repositories_subversion_controller_test.rb b/test/functional/repositories_subversion_controller_test.rb --- a/test/functional/repositories_subversion_controller_test.rb +++ b/test/functional/repositories_subversion_controller_test.rb @@ -27,7 +27,7 @@ class RepositoriesSubversionControllerTe :issue_categories, :enumerations, :custom_fields, :custom_values, :trackers PRJ_ID = 3 - NUM_REV = 12 + NUM_REV = 14 def setup super @@ -40,7 +40,8 @@ class RepositoriesSubversionControllerTe assert @repository end - if repository_configured?('subversion') + if repository_configured?('subversion') && + !(Redmine::Database::mysql? && !is_mysql_utf8mb4) def test_new @request.session[:user_id] = 1 @project.repository.destroy @@ -594,8 +595,13 @@ class RepositoriesSubversionControllerTe @project.reload assert_nil @project.repository end + elsif !repository_configured?('subversion') + puts "Subversion test repository NOT FOUND. Skipping functional tests !!!" + def test_fake; assert true end else - puts "Subversion test repository NOT FOUND. Skipping functional tests !!!" + puts "Subversion test repository contains Emoji." + puts "Tests connot run on NOT utf8mb4 MySQL." + puts "Skipping functional tests !!!" def test_fake; assert true end end end diff --git a/test/unit/repository_subversion_test.rb b/test/unit/repository_subversion_test.rb --- a/test/unit/repository_subversion_test.rb +++ b/test/unit/repository_subversion_test.rb @@ -24,7 +24,7 @@ class RepositorySubversionTest < ActiveS include Redmine::I18n - NUM_REV = 12 + NUM_REV = 14 def setup User.current = nil @@ -91,14 +91,15 @@ class RepositorySubversionTest < ActiveS end end - if repository_configured?('subversion') + if repository_configured?('subversion') && + !(Redmine::Database::mysql? && !is_mysql_utf8mb4) def test_fetch_changesets_from_scratch assert_equal 0, @repository.changesets.count @repository.fetch_changesets @project.reload assert_equal NUM_REV, @repository.changesets.count - assert_equal 21, @repository.filechanges.count + assert_equal 23, @repository.filechanges.count assert_equal 'Initial import.', @repository.changesets.find_by_revision('1').comments end @@ -281,8 +282,13 @@ class RepositorySubversionTest < ActiveS changeset = @repository.find_changeset_by_name(NUM_REV.to_s) assert_nil changeset.next end + elsif !repository_configured?('subversion') + puts "Subversion test repository NOT FOUND. Skipping unit tests !!!" + def test_fake; assert true end else - puts "Subversion test repository NOT FOUND. Skipping unit tests !!!" + puts "Subversion test repository contains Emoji." + puts "Tests connot run on NOT utf8mb4 MySQL." + puts "Skipping unit tests !!!" def test_fake; assert true end end end # HG changeset patch # User Toshi MARUYAMA # Date 1586829444 -32400 # Tue Apr 14 10:57:24 2020 +0900 # Branch svn00 # Node ID cd7e1e34796745410f84bbe3be68bcc5481dede8 # Parent 789abf2a2cef2ea50f414202dda5e10cc5f2dc32 scm: subversion: add test of UTF-8 Emoji committer and comments (#24030) diff --git a/test/unit/repository_subversion_test.rb b/test/unit/repository_subversion_test.rb --- a/test/unit/repository_subversion_test.rb +++ b/test/unit/repository_subversion_test.rb @@ -247,6 +247,16 @@ class RepositorySubversionTest < ActiveS end end + def test_utf8_emoji + assert_equal 0, @repository.changesets.count + @repository.fetch_changesets + @project.reload + assert_equal NUM_REV, @repository.changesets.count + changeset = @repository.find_changeset_by_name('13') + assert_equal "U+1F603\u{1F603}", changeset.committer + assert_equal "U+1F603\u{1F603}", changeset.comments + end + def test_previous assert_equal 0, @repository.changesets.count @repository.fetch_changesets