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)


1111
1112
1113
# File 'lib/minitest/unit.rb', line 1111

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)


1104
1105
1106
# File 'lib/minitest/unit.rb', line 1104

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

#mri?(platform = RUBY_DESCRIPTION) ⇒ Boolean

Is this running on mri?

Returns:

  • (Boolean)


1120
1121
1122
# File 'lib/minitest/unit.rb', line 1120

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

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

Is this running on rubinius?

Returns:

  • (Boolean)


1127
1128
1129
# File 'lib/minitest/unit.rb', line 1127

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

#windows?(platform = RUBY_PLATFORM) ⇒ Boolean

Is this running on windows?

Returns:

  • (Boolean)


1134
1135
1136
# File 'lib/minitest/unit.rb', line 1134

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