Module: Minitest::Guard

Included in:
Test, Test
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 collapse

Instance Method Details

#jruby?(platform = RUBY_PLATFORM) ⇒ Boolean

Is this running on jruby?

Returns:

  • (Boolean)


729
730
731
# File 'lib/minitest.rb', line 729

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

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

Is this running on maglev?

Returns:

  • (Boolean)


736
737
738
# File 'lib/minitest.rb', line 736

def maglev? platform = defined?(RUBY_ENGINE) && RUBY_ENGINE
  "maglev" == platform
end

#mri?(platform = RUBY_DESCRIPTION) ⇒ Boolean

Is this running on mri?

Returns:

  • (Boolean)


743
744
745
# File 'lib/minitest.rb', line 743

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

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

Is this running on rubinius?

Returns:

  • (Boolean)


750
751
752
# File 'lib/minitest.rb', line 750

def rubinius? platform = defined?(RUBY_ENGINE) && RUBY_ENGINE
  "rbx" == platform
end

#windows?(platform = RUBY_PLATFORM) ⇒ Boolean

Is this running on windows?

Returns:

  • (Boolean)


757
758
759
# File 'lib/minitest.rb', line 757

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