123456789_123456789_123456789_123456789_123456789_

Module: Minitest::Guard

Relationships & Source Files
Extension / Inclusion / Inheritance Descendants
Extended In:
BenchSpec, Benchmark, Spec, Test, Minitest::Unit::TestCase
Included In:
BenchSpec, Benchmark, Spec, Test, Minitest::Unit::TestCase
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

Instance Method Details

#jruby?(platform = RUBY_PLATFORM) ⇒ Boolean

Is this running on jruby?

[ GitHub ]

  
# File 'lib/minitest.rb', line 954

def jruby? platform = RUBY_PLATFORM
  "java" == platform
end

#maglev?(platform = defined?(RUBY_ENGINE) && RUBY_ENGINE) ⇒ Boolean

Is this running on maglev?

[ GitHub ]

  
# File 'lib/minitest.rb', line 961

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?

[ GitHub ]

  
# File 'lib/minitest.rb', line 971

def mri? platform = RUBY_DESCRIPTION
  /^ruby/ =~ platform
end

#osx?(platform = RUBY_PLATFORM) ⇒ Boolean

Is this running on macOS?

[ GitHub ]

  
# File 'lib/minitest.rb', line 978

def osx? platform = RUBY_PLATFORM
  /darwin/ =~ platform
end

#rubinius?(platform = defined?(RUBY_ENGINE) && RUBY_ENGINE) ⇒ Boolean

Is this running on rubinius?

[ GitHub ]

  
# File 'lib/minitest.rb', line 985

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?

[ GitHub ]

  
# File 'lib/minitest.rb', line 995

def windows? platform = RUBY_PLATFORM
  /mswin|mingw/ =~ platform
end