Method: Minitest::Assertions#assert_between

Defined in:
lib/minitest-bonus-assertions.rb

#assert_between(*args) ⇒ Object

Fails unless exp is between lo and hi, or is in range. This test is exclusive of the boundaries. That is:

assert_between 1, 10, 1

will return false, but:

assert_between 0.99, 10.1, 1

will return true.

:call-seq:

assert_between lo, hi, exp, msg = nil
assert_between range, exp, msg = nil


39
40
41
42
43
44
45
46
47
48
# File 'lib/minitest-bonus-assertions.rb', line 39

def assert_between(*args)
  lo, hi, exp, msg = if args.first.kind_of?(Range)
                       [args.first.begin, args.first.end, args[1], args[2]]
                     else
                       args[0..3]
                     end
  lo, hi = hi, lo if lo > hi
  msg = message(msg) { "Expected #{mu_pp(exp)} to be between #{mu_pp(lo)} and #{mu_pp(hi)}" }
  assert (lo < exp && exp < hi), msg
end