diff options
| author | Hiroshi SHIBATA <shibata.hiroshi@gmail.com> | 2026-06-28 18:38:14 +0900 |
|---|---|---|
| committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2026-06-29 11:45:53 +0900 |
| commit | e66791ac56bc9e39f5ade672e1ba80344bb2d614 (patch) | |
| tree | 0eb0695bcdf7a45098c1f43c0217c099377523c9 | |
| parent | 1bcc15d1d83af7f5c6b1da577e6790455caae534 (diff) | |
These specs guard limitations specific to the mswin build: nmake has no
make jobserver, the generated Makefile uses MSVC `-libpath:` syntax,
extensionless executables cannot be exec'd, and the raygun-apm fixture
only ships an x64-mswin64 variant. The mingw build passes them, so match
the platform string directly instead of Gem.win_platform?, which is also
true on mingw. The MAX_PATH and cross-drive guards stay on Gem.win_platform?
since those limitations are not specific to mswin.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
| -rw-r--r-- | spec/bundler/bundler/installer/parallel_installer_spec.rb | 2 | ||||
| -rw-r--r-- | spec/bundler/commands/cache_spec.rb | 2 | ||||
| -rw-r--r-- | spec/bundler/commands/exec_spec.rb | 10 | ||||
| -rw-r--r-- | spec/bundler/commands/install_spec.rb | 2 | ||||
| -rw-r--r-- | spec/bundler/commands/lock_spec.rb | 2 | ||||
| -rw-r--r-- | spec/bundler/commands/pristine_spec.rb | 4 |
6 files changed, 11 insertions, 11 deletions
diff --git a/spec/bundler/bundler/installer/parallel_installer_spec.rb b/spec/bundler/bundler/installer/parallel_installer_spec.rb index 51104fb4cc..0f93892e63 100644 --- a/spec/bundler/bundler/installer/parallel_installer_spec.rb +++ b/spec/bundler/bundler/installer/parallel_installer_spec.rb @@ -86,7 +86,7 @@ RSpec.describe Bundler::ParallelInstaller do # The make jobserver is a GNU make feature. On Windows extensions are built # with nmake, which has no `-j` jobserver, so the per-gem slot count never # appears in the build output. - skip "The make jobserver is not available on Windows (nmake)" if Gem.win_platform? + skip "The make jobserver is not available on Windows (nmake)" if /mswin/.match?(RUBY_PLATFORM) # When run under a parent make that already passes `-j` (e.g. ruby/ruby's # `make test-bundler-parallel`), RubyGems' extension builder sees the diff --git a/spec/bundler/commands/cache_spec.rb b/spec/bundler/commands/cache_spec.rb index 682dda53bf..74569075e9 100644 --- a/spec/bundler/commands/cache_spec.rb +++ b/spec/bundler/commands/cache_spec.rb @@ -208,7 +208,7 @@ RSpec.describe "bundle cache" do end it "prints a warn when using legacy windows rubies" do - skip "the legacy windows platform gem is not cached for the current mswin platform" if Gem.win_platform? + skip "the legacy windows platform gem is not cached for the current mswin platform" if /mswin/.match?(RUBY_PLATFORM) gemfile <<-D source "https://gem.repo1" gem 'myrack', :platforms => [:ruby_20, :x64_mingw_20] diff --git a/spec/bundler/commands/exec_spec.rb b/spec/bundler/commands/exec_spec.rb index 12b5c967f1..6eba969712 100644 --- a/spec/bundler/commands/exec_spec.rb +++ b/spec/bundler/commands/exec_spec.rb @@ -72,7 +72,7 @@ RSpec.describe "bundle exec" do end it "works when exec'ing to rubygems" do - skip "https://github.com/ruby/rubygems/issues/3351" if Gem.win_platform? + skip "https://github.com/ruby/rubygems/issues/3351" if /mswin/.match?(RUBY_PLATFORM) install_gemfile "source \"https://gem.repo1\"; gem \"myrack\"" bundle "exec #{gem_cmd} --version" expect(out).to eq(Gem::VERSION) @@ -205,7 +205,7 @@ RSpec.describe "bundle exec" do end it "uses version provided by ruby" do - skip "https://github.com/ruby/rubygems/issues/3351" if Gem.win_platform? + skip "https://github.com/ruby/rubygems/issues/3351" if /mswin/.match?(RUBY_PLATFORM) bundle "exec erb --version" expect(stdboth).to eq(default_erb_version) @@ -634,7 +634,7 @@ RSpec.describe "bundle exec" do describe "with gems bundled via :path with invalid gemspecs" do it "outputs the gemspec validation errors" do - skip "https://github.com/ruby/rubygems/issues/3351" if Gem.win_platform? + skip "https://github.com/ruby/rubygems/issues/3351" if /mswin/.match?(RUBY_PLATFORM) build_lib "foo" gemspec = lib_path("foo-1.0").join("foo.gemspec").to_s @@ -695,7 +695,7 @@ RSpec.describe "bundle exec" do end it "works" do - skip "https://github.com/ruby/rubygems/issues/3351" if Gem.win_platform? + skip "https://github.com/ruby/rubygems/issues/3351" if /mswin/.match?(RUBY_PLATFORM) bundle "exec #{gem_cmd} uninstall foo" expect(out).to eq("Successfully uninstalled foo-1.0") end @@ -717,7 +717,7 @@ RSpec.describe "bundle exec" do end it "does not load plugins outside of the bundle" do - skip "https://github.com/ruby/rubygems/issues/3351" if Gem.win_platform? + skip "https://github.com/ruby/rubygems/issues/3351" if /mswin/.match?(RUBY_PLATFORM) bundle "exec #{gem_cmd} -v" expect(out).not_to include("FAIL") end diff --git a/spec/bundler/commands/install_spec.rb b/spec/bundler/commands/install_spec.rb index d71c4583b2..d7f2961add 100644 --- a/spec/bundler/commands/install_spec.rb +++ b/spec/bundler/commands/install_spec.rb @@ -1352,7 +1352,7 @@ RSpec.describe "bundle install with gem sources" do # The make jobserver is a GNU make feature. On Windows extensions are built # with nmake, which has no `-j` jobserver (and an inherited `-j` MAKEFLAGS # even breaks nmake), so the slot count these examples assert never appears. - skip "The make jobserver is not available on Windows (nmake)" if Gem.win_platform? + skip "The make jobserver is not available on Windows (nmake)" if /mswin/.match?(RUBY_PLATFORM) @old_makeflags = ENV["MAKEFLAGS"] @gemspec = nil diff --git a/spec/bundler/commands/lock_spec.rb b/spec/bundler/commands/lock_spec.rb index 63dc479786..027c70b26f 100644 --- a/spec/bundler/commands/lock_spec.rb +++ b/spec/bundler/commands/lock_spec.rb @@ -1286,7 +1286,7 @@ RSpec.describe "bundle lock" do end it "does not conflict on ruby requirements when adding new platforms" do - skip "the raygun-apm fixture has no x64-mswin64 variant for the current platform" if Gem.win_platform? + skip "the raygun-apm fixture has no x64-mswin64 variant for the current platform" if /mswin/.match?(RUBY_PLATFORM) build_repo4 do build_gem "raygun-apm", "1.0.78" do |s| s.platform = "x86_64-linux" diff --git a/spec/bundler/commands/pristine_spec.rb b/spec/bundler/commands/pristine_spec.rb index 978ca6424b..e16bcae90a 100644 --- a/spec/bundler/commands/pristine_spec.rb +++ b/spec/bundler/commands/pristine_spec.rb @@ -232,7 +232,7 @@ RSpec.describe "bundle pristine" do # This just verifies that the generated Makefile from the c_ext gem makes # use of the build_args from the bundle config it "applies the config when installing the gem" do - skip "the generated Makefile uses MSVC `-libpath:` syntax instead of `-L` on Windows" if Gem.win_platform? + skip "the generated Makefile uses MSVC `-libpath:` syntax instead of `-L` on Windows" if /mswin/.match?(RUBY_PLATFORM) bundle "pristine" makefile_contents = File.read(c_ext_dir.join("Makefile").to_s) @@ -250,7 +250,7 @@ RSpec.describe "bundle pristine" do # This just verifies that the generated Makefile from the c_ext gem makes # use of the build_args from the bundle config it "applies the config when installing the gem" do - skip "the generated Makefile uses MSVC `-libpath:` syntax instead of `-L` on Windows" if Gem.win_platform? + skip "the generated Makefile uses MSVC `-libpath:` syntax instead of `-L` on Windows" if /mswin/.match?(RUBY_PLATFORM) bundle "pristine" makefile_contents = File.read(c_ext_dir.join("Makefile").to_s) |
