summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-18 03:16:27 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-18 03:16:27 +0000
commitb06dfe594e0e4709d41f101ee7e9ecbb85728728 (patch)
tree79ea9a396164f6f29087147fa20a6d79638558b0 /test
parent87f099d0699f77162007217611c4568b6926092c (diff)
* lib/rubygems/specification.rb: Fixed ruby output of requirements
with multiple version specifiers. * test/rubygems/test_gem_ext_cmake_builder.rb: Only look for specific lines in cmake output. Should fix [ruby-trunk - Bug #7579] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-rw-r--r--test/rubygems/test_gem_ext_cmake_builder.rb32
1 files changed, 19 insertions, 13 deletions
diff --git a/test/rubygems/test_gem_ext_cmake_builder.rb b/test/rubygems/test_gem_ext_cmake_builder.rb
index 8c01c12982..0e4f8fe0ff 100644
--- a/test/rubygems/test_gem_ext_cmake_builder.rb
+++ b/test/rubygems/test_gem_ext_cmake_builder.rb
@@ -24,8 +24,8 @@ cmake_minimum_required(VERSION 2.8)
install (FILES test.txt DESTINATION bin)
eo_cmake
end
- File.open File.join(@ext, 'test.txt'), 'w' do |testfile|
- end
+
+ FileUtils.touch File.join(@ext, 'test.txt')
output = []
@@ -33,12 +33,14 @@ install (FILES test.txt DESTINATION bin)
Gem::Ext::CmakeBuilder.build nil, nil, @dest_path, output
end
- assert_equal "cmake . -DCMAKE_INSTALL_PREFIX=#{@dest_path}", output.shift
- assert_match(/#{@ext}/, output.shift)
- assert_equal make_command, output.shift
- assert_equal "", output.shift.gsub(/^make\[1\]: (?:Entering|Leaving) directory .*\n/,"")
- assert_equal make_command + " install", output.shift
- assert_match(/test\.txt/, output.shift)
+ output = output.join "\n"
+
+ assert_match \
+ %r%^cmake \. -DCMAKE_INSTALL_PREFIX=#{Regexp.escape @dest_path}%, output
+ assert_match %r%#{Regexp.escape @ext}%, output
+ assert_match %r%^#{Regexp.escape make_command}$%, output
+ assert_match %r%^#{Regexp.escape make_command} install$%, output
+ assert_match %r%test\.txt%, output
end
def test_self_build_fail
@@ -50,6 +52,8 @@ install (FILES test.txt DESTINATION bin)
end
end
+ output = output.join "\n"
+
shell_error_msg = %r{(CMake Error: .*)}
sh_prefix_cmake = "cmake . -DCMAKE_INSTALL_PREFIX="
@@ -61,9 +65,8 @@ install (FILES test.txt DESTINATION bin)
assert_match expected, error.message
- assert_equal "#{sh_prefix_cmake}#{@dest_path}", output.shift
- assert_match %r(#{shell_error_msg}), output.shift
- assert_equal true, output.empty?
+ assert_match %r%^#{sh_prefix_cmake}#{Regexp.escape @dest_path}%, output
+ assert_match %r%#{shell_error_msg}%, output
end
def test_self_build_has_makefile
@@ -72,12 +75,15 @@ install (FILES test.txt DESTINATION bin)
end
output = []
+
Dir.chdir @ext do
Gem::Ext::CmakeBuilder.build nil, nil, @dest_path, output
end
- assert_equal make_command, output[0]
- assert_equal "#{make_command} install", output[2]
+ output = output.join "\n"
+
+ assert_match %r%^#{make_command}%, output
+ assert_match %r%^#{make_command} install%, output
end
end