bundle-new/spec/support/platforms.rb

95 lines
1.7 KiB
Ruby
Raw Permalink Normal View History

2019-10-06 15:45:34 +00:00
module Spec
module Platforms
include Bundler::GemHelpers
def rb
Gem::Platform::RUBY
end
def mac
Gem::Platform.new('x86-darwin-10')
end
def java
Gem::Platform.new([nil, "java", nil])
end
def linux
Gem::Platform.new(['x86', 'linux', nil])
end
def mswin
Gem::Platform.new(['x86', 'mswin32', nil])
end
def mingw
Gem::Platform.new(['x86', 'mingw32', nil])
end
def x64_mingw
Gem::Platform.new(['x64', 'mingw32', nil])
end
def all_platforms
[rb, java, linux, mswin, mingw, x64_mingw]
end
def local
generic(Gem::Platform.local)
end
def not_local
all_platforms.find { |p| p != generic(Gem::Platform.local) }
end
def local_tag
if RUBY_PLATFORM == "java"
:jruby
else
:ruby
end
end
def not_local_tag
[:ruby, :jruby].find { |tag| tag != local_tag }
end
def local_ruby_engine
ENV["BUNDLER_SPEC_RUBY_ENGINE"] || (defined?(RUBY_ENGINE) ? RUBY_ENGINE : "ruby")
end
def local_engine_version
return ENV["BUNDLER_SPEC_RUBY_ENGINE_VERSION"] if ENV["BUNDLER_SPEC_RUBY_ENGINE_VERSION"]
case local_ruby_engine
when "ruby"
RUBY_VERSION
when "rbx"
Rubinius::VERSION
when "jruby"
JRUBY_VERSION
else
raise BundlerError, "That RUBY_ENGINE is not recognized"
nil
end
end
def not_local_engine_version
case not_local_tag
when :ruby
not_local_ruby_version
when :jruby
"1.6.1"
end
end
def not_local_ruby_version
"1.12"
end
def not_local_patchlevel
9999
end
end
end