module Minitest::Expectations

It’s where you hide your “assertions”.

Please note, because of the way that expectations are implemented, all expectations (eg must_equal) are dependent upon a thread local variable :current_spec. If your specs rely on mixing threads into the specs themselves, you’re better off using assertions or the new _(value) wrapper. For example:

it "should still work in threads" do
  my_threaded_thingy do
    (1+1).must_equal 2                  # bad
    assert_equal 2, 1+1                 # good
    _(1 + 1).must_equal 2               # good
    value(1 + 1).must_equal 2           # good, also #expect
    _ { 1 + "1" }.must_raise TypeError  # good
  end
end