Sha256: dae2c504e312a958856cbc1541f703827c2b392114b1d397bf80d1fbf12ed1e4
Contents?: true
Size: 546 Bytes
Versions: 3
Compression:
Stored size: 546 Bytes
Contents
module Adapter module Asserts RequiredMethods = [:read, :write, :delete, :clear] def assert_valid_module(mod) assert_methods_defined(mod) end def assert_valid_adapter(name) raise Undefined.new(name) unless definitions.key?(name.to_sym) end def assert_methods_defined(mod) missing_methods = [] RequiredMethods.each do |meth| missing_methods << meth unless mod.method_defined?(meth) end raise IncompleteAPI.new(missing_methods) unless missing_methods.empty? end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
adapter-0.5.2 | lib/adapter/asserts.rb |
adapter-0.5.1 | lib/adapter/asserts.rb |
adapter-0.5 | lib/adapter/asserts.rb |