Sha256: 7807510fc6cbd9007ececaf7516647893d9f9072c3429274783097f70d12ccbd

Contents?: true

Size: 1.22 KB

Versions: 22

Compression:

Stored size: 1.22 KB

Contents

RSpec::Matchers.define :be_infix_operator do |operator|
  match { |node| node.kind_of?(ScopedSearch::QueryLanguage::AST::OperatorNode) && node.infix? && (operator.nil? || operator == node.operator) }
end

RSpec::Matchers.define :be_prefix_operator do |operator|
  match { |node| node.kind_of?(ScopedSearch::QueryLanguage::AST::OperatorNode) && node.prefix? && (operator.nil? || operator == node.operator) }
end

RSpec::Matchers.define :be_logical_operator do |operator|
  match { |node| node.kind_of?(ScopedSearch::QueryLanguage::AST::LogicalOperatorNode) && (operator.nil? || operator == node.operator) }
end

RSpec::Matchers.define :be_leaf_node do |value|
  match { |node| node.kind_of?(ScopedSearch::QueryLanguage::AST::LeafNode) && (value.nil? || value == node.value) }
end

RSpec::Matchers.define :tokenize_to do |*tokens|
  match { |str| tokens == ScopedSearch::QueryLanguage::Compiler.tokenize(str) }
end

RSpec::Matchers.define :parse_to do |tree|
  match { |str| tree == ScopedSearch::QueryLanguage::Compiler.parse(str).to_a }
end

RSpec::Matchers.define :contain do |*expected|
  match do |actual|
    expected.all? { |e| actual.include?(e) }
  end

  match_when_negated do |actual|
    expected.none? { |e| actual.include?(e) }
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
scoped_search-4.1.13 spec/lib/matchers.rb
scoped_search-4.1.12 spec/lib/matchers.rb
scoped_search-4.1.11 spec/lib/matchers.rb
scoped_search-4.1.10 spec/lib/matchers.rb
scoped_search-4.1.9 spec/lib/matchers.rb
scoped_search-4.1.8 spec/lib/matchers.rb
scoped_search-4.1.7 spec/lib/matchers.rb
scoped_search-4.1.6 spec/lib/matchers.rb
scoped_search-4.1.5 spec/lib/matchers.rb
scoped_search-4.1.4 spec/lib/matchers.rb
scoped_search-4.1.3 spec/lib/matchers.rb
scoped_search-4.1.2 spec/lib/matchers.rb
scoped_search-4.1.1 spec/lib/matchers.rb
scoped_search-4.1.0 spec/lib/matchers.rb
scoped_search-4.0.0 spec/lib/matchers.rb
scoped_search-3.3.0 spec/lib/matchers.rb
scoped_search-3.2.2 spec/lib/matchers.rb
scoped_search-3.2.1 spec/lib/matchers.rb
scoped_search-3.2.0 spec/lib/matchers.rb
scoped_search-3.1.0 spec/lib/matchers.rb