Sha256: 03d1206b97520eb8d3ea0d5c38c4dbec91ee895c37c44f90f23b4c585b39f42d

Contents?: true

Size: 620 Bytes

Versions: 4

Compression:

Stored size: 620 Bytes

Contents

# frozen-string-literal: true

module Leftovers
  module MatcherBuilders
    module NodeHasKeywordArgument
      def self.build(keywords, value_matcher)
        value_matcher = ::Leftovers::MatcherBuilders::NodePairValue.build(value_matcher)
        keyword_matcher = ::Leftovers::MatcherBuilders::NodePairName.build(keywords)

        pair_matcher = ::Leftovers::MatcherBuilders::And.build([
          keyword_matcher, value_matcher
        ])
        # :nocov:
        raise unless pair_matcher

        # :nocov:

        ::Leftovers::Matchers::NodeHasAnyKeywordArgument.new(pair_matcher)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
leftovers-0.4.3 lib/leftovers/matcher_builders/node_has_keyword_argument.rb
leftovers-0.4.2 lib/leftovers/matcher_builders/node_has_keyword_argument.rb
leftovers-0.4.1 lib/leftovers/matcher_builders/node_has_keyword_argument.rb
leftovers-0.4.0 lib/leftovers/matcher_builders/node_has_keyword_argument.rb