Sha256: b81eacddc7e9f241cdd6b4d624eb12cb40ec347578b1cbeb3e28f11dcb111ee4

Contents?: true

Size: 692 Bytes

Versions: 3

Compression:

Stored size: 692 Bytes

Contents

# frozen_string_literal: true

module Duckface
  class CheckSession
    def initialize
      @methods_not_implemented = []
      @methods_with_incorrect_signatures = []
    end

    attr_reader :methods_not_implemented,
                :methods_with_incorrect_signatures

    def notice_not_implemented_method(method_name)
      @methods_not_implemented << method_name
    end

    def notice_method_with_incorrect_signature(method_name)
      @methods_with_incorrect_signatures << method_name
    end

    def successful?
      @methods_not_implemented.empty? && @methods_with_incorrect_signatures.empty?
    end

    def null?
      false
    end

    alias correctly successful?
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
duckface-interfaces-0.0.5 lib/duckface/check_session.rb
duckface-interfaces-0.0.4 lib/duckface/check_session.rb
duckface-interfaces-0.0.3 lib/duckface/check_session.rb