module Simplecheck
Constants
- VERSION
Public Class Methods
check_arguments(arguments)
click to toggle source
# File lib/simplecheck.rb, line 15 def self.check_arguments(arguments) case arguments.size when 1 check_expression(arguments[0]) else check_case_equality(*arguments) end end
check_arguments_with_block(arguments, block)
click to toggle source
# File lib/simplecheck.rb, line 24 def self.check_arguments_with_block(arguments, block) check_arguments(arguments + [block]) end
check_case_equality(*arguments, check_argument)
click to toggle source
# File lib/simplecheck.rb, line 32 def self.check_case_equality(*arguments, check_argument) invalid_argument_index = arguments.index{ |argument| !(check_argument === argument) } if invalid_argument_index "#{ arguments[invalid_argument_index] } does not satisfy #{ check_argument }" end end
check_expression(expression_satisfied)
click to toggle source
# File lib/simplecheck.rb, line 28 def self.check_expression(expression_satisfied) 'Condition is not satisfied' unless expression_satisfied end
handle_failure(message)
click to toggle source
# File lib/simplecheck.rb, line 40 def self.handle_failure(message) fail(Simplecheck::CheckFailed, message) end
Public Instance Methods
check(*arguments, error_message: nil, &block)
click to toggle source
# File lib/simplecheck.rb, line 5 def check(*arguments, error_message: nil, &block) default_error_message = if block_given? Simplecheck.check_arguments_with_block(arguments, block) else Simplecheck.check_arguments(arguments) end default_error_message ? Simplecheck.handle_failure(error_message || default_error_message) : true end