Skip to content

Commit f712086

Browse files
committed
test_sync_default_gems.rb: Omit if git is v2.43 or older
1 parent dc2a62e commit f712086

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

tool/test/test_sync_default_gems.rb

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
require 'test/unit'
33
require 'stringio'
44
require 'tmpdir'
5+
require 'rubygems/version'
56
require_relative '../sync_default_gems'
67

78
module Test_SyncDefaultGems
@@ -319,9 +320,13 @@ def test_delete_after_conflict
319320
end
320321

321322
def test_squash_merge
322-
if RUBY_PLATFORM =~ /s390x/
323-
omit("git 2.43.0 bug on s390x ubuntu 24.04: BUG: log-tree.c:1058: did a remerge diff without remerge_objdir?!?")
324-
end
323+
# This test is known to fail with git 2.43.0, which is used by Ubuntu 24.04.
324+
# We don't know which exact version fixed it, but we know git 2.52.0 works.
325+
stdout, status = Open3.capture2('git', '--version', err: File::NULL)
326+
omit 'git version check failed' unless status.success?
327+
git_version = stdout.rstrip.delete_prefix('git version ')
328+
omit "git #{git_version} is too old" if Gem::Version.new(git_version) < Gem::Version.new('2.44.0')
329+
325330
# 2---. <- branch
326331
# / \
327332
# 1---3---3'<- merge commit with conflict resolution

0 commit comments

Comments
 (0)