Module: MiniTest::Unit::Guard

Included in:
TestCase, TestCase
Defined in:
lib/minitest/unit.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 TestCase 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

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

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

Is this running on mri?

Returns:

  • (Boolean)


1106
1107
1108
# File 'lib/minitest/unit.rb', line 1106

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

Instance Method Details

#jruby?(platform = RUBY_PLATFORM) ⇒ Boolean

Is this running on jruby?

Returns:

  • (Boolean)


1099
1100
1101
# File 'lib/minitest/unit.rb', line 1099

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

#mri?(platform = RUBY_DESCRIPTION) ⇒ Boolean

Is this running on mri?

Returns:

  • (Boolean)


1115
1116
1117
# File 'lib/minitest/unit.rb', line 1115

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

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

Is this running on rubinius?

Returns:

  • (Boolean)


1122
1123
1124
# File 'lib/minitest/unit.rb', line 1122

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

#windows?(platform = RUBY_PLATFORM) ⇒ Boolean

Is this running on windows?

Returns:

  • (Boolean)


1129
1130
1131
# File 'lib/minitest/unit.rb', line 1129

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