Module: CodeAssertions
- Defined in:
- lib/code-assertions.rb
Defined Under Namespace
Classes: CodeAssertionFailed
Constant Summary
collapse
- @@assertions_check =
true
Instance Method Summary
collapse
Instance Method Details
#assert(message = "Assertion failed", &block) ⇒ Object
9
10
11
12
13
|
# File 'lib/code-assertions.rb', line 9
def assert(message="Assertion failed", &block)
return unless @@assertions_check
raise CodeAssertionFailed, message unless block.call
end
|
#assert_not_nil(object) ⇒ Object
15
16
17
|
# File 'lib/code-assertions.rb', line 15
def assert_not_nil(object)
assert("The result cannot be `nil` or `false`. #{object} given") { object }
end
|
#assert_type(type, object) ⇒ Object
19
20
21
22
|
# File 'lib/code-assertions.rb', line 19
def assert_type(type, object)
assert("`type` should be an instance of `Class`") { type.is_a?(Class) }
assert("Wrong type: expected #{type.name}, given #{object.class.name}") { object.is_a?(type) }
end
|
#assertions_off ⇒ Object
5
6
7
|
# File 'lib/code-assertions.rb', line 5
def assertions_off
@@assertions_check = false
end
|