Module: Minitest::Guard
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Extended In:
| |
Included In:
| |
Defined in: | lib/minitest.rb |
Overview
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
Instance Method Summary
-
#jruby?(platform = RUBY_PLATFORM) ⇒ Boolean
Is this running on jruby?
-
#maglev?(platform = defined?(RUBY_ENGINE) && RUBY_ENGINE) ⇒ Boolean
Is this running on maglev?
-
#mri?(platform = RUBY_DESCRIPTION) ⇒ Boolean
Is this running on mri?
-
#osx?(platform = RUBY_PLATFORM) ⇒ Boolean
Is this running on macOS?
-
#rubinius?(platform = defined?(RUBY_ENGINE) && RUBY_ENGINE) ⇒ Boolean
Is this running on rubinius?
-
#windows?(platform = RUBY_PLATFORM) ⇒ Boolean
Is this running on windows?
Instance Method Details
#jruby?(platform = RUBY_PLATFORM) ⇒ Boolean
Is this running on jruby?
# File 'lib/minitest.rb', line 1123
def jruby? platform = RUBY_PLATFORM "java" == platform end
#maglev?(platform = defined?(RUBY_ENGINE) && RUBY_ENGINE) ⇒ Boolean
Is this running on maglev?
# File 'lib/minitest.rb', line 1130
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
#mri?(platform = RUBY_DESCRIPTION) ⇒ Boolean
Is this running on mri?
# File 'lib/minitest.rb', line 1140
def mri? platform = RUBY_DESCRIPTION platform.start_with? "ruby" end
#osx?(platform = RUBY_PLATFORM) ⇒ Boolean
Is this running on macOS?
# File 'lib/minitest.rb', line 1147
def osx? platform = RUBY_PLATFORM platform.include? "darwin" end
#rubinius?(platform = defined?(RUBY_ENGINE) && RUBY_ENGINE) ⇒ Boolean
Is this running on rubinius?
# File 'lib/minitest.rb', line 1154
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
#windows?(platform = RUBY_PLATFORM) ⇒ Boolean
Is this running on windows?
# File 'lib/minitest.rb', line 1164
def windows? platform = RUBY_PLATFORM /mswin|mingw/.match? platform end