1. Minitest ::
  2. Guard

module Minitest::Guard

Provides a simple set of guards that you can use in your tests to skip execution if it is not applicable. These methods are mixed into Test as both instance and class methods so you can use them inside or outside of the test methods.

def test_something_for_mri
 skip "bug 1234" if jruby?
 # ...
end
if windows? then
 # ... lots of test methods ...
end

Public Instance Methods

Source
# File lib/minitest.rb, line 1126
def jruby? platform = RUBY_PLATFORM
 "java" == platform
end

Is this running on jruby?

Source
# File lib/minitest.rb, line 1133
def maglev? platform = defined?(RUBY_ENGINE) && RUBY_ENGINE
 where = Minitest.filter_backtrace(caller).first
 where = where.split(":in ", 2).first # clean up noise
 warn "DEPRECATED: `maglev?` called from #{where}. This will fail in Minitest 6."
 "maglev" == platform
end

Is this running on maglev?

Source
# File lib/minitest.rb, line 1143
def mri? platform = RUBY_DESCRIPTION
 platform.start_with? "ruby"
end

Is this running on mri?

Source
# File lib/minitest.rb, line 1150
def osx? platform = RUBY_PLATFORM
 platform.include? "darwin"
end

Is this running on macOS?

Source
# File lib/minitest.rb, line 1157
def rubinius? platform = defined?(RUBY_ENGINE) && RUBY_ENGINE
 where = Minitest.filter_backtrace(caller).first
 where = where.split(":in ", 2).first # clean up noise
 warn "DEPRECATED: `rubinius?` called from #{where}. This will fail in Minitest 6."
 "rbx" == platform
end

Is this running on rubinius?

Source
# File lib/minitest.rb, line 1167
def windows? platform = RUBY_PLATFORM
 /mswin|mingw/.match? platform
end

Is this running on windows?