module TestRunner::Assert::Checks::Registry
Attributes
registry[R]
Public Class Methods
define(check_name, block)
click to toggle source
# File lib/test_runner/assert/checks/registry.rb, line 9 def self.define check_name, block klass = Class.new Check klass.instance_variable_set :@block, block constant_name = Util.to_camel_case check_name const_set constant_name, klass klass end
extended(base)
click to toggle source
# File lib/test_runner/assert/checks/registry.rb, line 5 def self.extended base base.instance_variable_set :@registry, {} end
Public Instance Methods
register(check_name, &block)
click to toggle source
# File lib/test_runner/assert/checks/registry.rb, line 19 def register check_name, &block registry[check_name] = Registry.define check_name, block end
resolve(check_name, &block)
click to toggle source
# File lib/test_runner/assert/checks/registry.rb, line 23 def resolve check_name, &block block ||= -> * do raise MissingCheck.new check_name end registry.fetch check_name, &block end
Also aliased as: []