Sha256: 6da54e882e1762cd27a316321ce63fd21b5b95d77fc8d537645fe836194e8153

Contents?: true

Size: 772 Bytes

Versions: 22

Compression:

Stored size: 772 Bytes

Contents

# frozen_string_literal: true

module Libuv
    module Assertions
        MSG_NO_PROC = 'no block given'

        def assert_block(proc, msg = MSG_NO_PROC)
            raise ArgumentError, msg, caller unless proc.respond_to? :call
        end

        def assert_type(type, actual, msg = nil)
            if not actual.kind_of?(type)
                msg ||= "value #{actual.inspect} is not a valid #{type}"
                raise ArgumentError, msg, caller
            end
        end

        def assert_boolean(actual, msg = nil)
            if not (actual.kind_of?(TrueClass) || actual.kind_of?(FalseClass))
                msg ||= "value #{actual.inspect} is not a valid Boolean"
                raise ArgumentError, msg, caller
            end
        end
    end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
libuv-4.0.9 lib/libuv/mixins/assertions.rb
libuv-4.0.2 lib/libuv/mixins/assertions.rb
libuv-4.0.1 lib/libuv/mixins/assertions.rb
libuv-4.0.0 lib/libuv/mixins/assertions.rb
libuv-3.3.0 lib/libuv/mixins/assertions.rb
libuv-3.2.4 lib/libuv/mixins/assertions.rb
libuv-3.2.3 lib/libuv/mixins/assertions.rb
libuv-3.2.2 lib/libuv/mixins/assertions.rb
libuv-3.2.1 lib/libuv/mixins/assertions.rb
libuv-3.2.0 lib/libuv/mixins/assertions.rb
libuv-3.1.9 lib/libuv/mixins/assertions.rb
libuv-3.1.8 lib/libuv/mixins/assertions.rb
libuv-3.1.7 lib/libuv/mixins/assertions.rb
libuv-3.1.6 lib/libuv/mixins/assertions.rb
libuv-3.1.5 lib/libuv/mixins/assertions.rb
libuv-3.1.4 lib/libuv/mixins/assertions.rb
libuv-3.1.3 lib/libuv/mixins/assertions.rb
libuv-3.1.2 lib/libuv/mixins/assertions.rb
libuv-3.1.1 lib/libuv/mixins/assertions.rb
libuv-3.1.0 lib/libuv/mixins/assertions.rb