Sha256: 6553492ec54feaad9a56b78eb7c5d81d007f1b476574e6beda6cb45f1cf0f0bc

Contents?: true

Size: 982 Bytes

Versions: 30

Compression:

Stored size: 982 Bytes

Contents

RSpec.shared_examples_for 'search query' do |options={}|
  options.assert_valid_keys(:formatted_operator)

  formatted_operator = options.fetch(:formatted_operator)

  context "with #{formatted_operator}" do
    subject(:query) do
      Metasploit::Model::Search::Query.new(
          :formatted => formatted,
          :klass => base_class
      )
    end

    let(:formatted) do
      "#{formatted_operator}:\"#{formatted_value}\""
    end

    let(:formatted_value) do
      "formatted_value"
    end

    context 'operations' do
      subject(:operations) do
        query.operations
      end

      context 'operator with matching name' do
        subject(:operator) do
          operation.operator
        end

        let(:operation) do
          operations.find { |operation|
            operation.operator.name == formatted_operator.to_sym
          }
        end

        it { is_expected.not_to be_nil }
        it { is_expected.to be_valid }
      end
    end
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
metasploit-model-5.0.2 spec/support/shared/examples/search/query.rb
metasploit-model-5.0.1 spec/support/shared/examples/search/query.rb
metasploit-model-5.0.0 spec/support/shared/examples/search/query.rb
metasploit-model-4.0.6 spec/support/shared/examples/search/query.rb
metasploit-model-4.0.5 spec/support/shared/examples/search/query.rb
metasploit-model-4.0.4 spec/support/shared/examples/search/query.rb
metasploit-model-4.0.3 spec/support/shared/examples/search/query.rb
metasploit-model-4.0.2 spec/support/shared/examples/search/query.rb
metasploit-model-4.0.1 spec/support/shared/examples/search/query.rb
metasploit-model-4.0.0 spec/support/shared/examples/search/query.rb
metasploit-model-3.1.4 spec/support/shared/examples/search/query.rb
metasploit-model-3.1.3 spec/support/shared/examples/search/query.rb
metasploit-model-3.1.2 spec/support/shared/examples/search/query.rb
metasploit-model-3.1.1 spec/support/shared/examples/search/query.rb
metasploit-model-3.1.0 spec/support/shared/examples/search/query.rb
metasploit-model-3.0.0 spec/support/shared/examples/search/query.rb
metasploit-model-2.0.4 spec/support/shared/examples/search/query.rb
metasploit-model-2.0.3 spec/support/shared/examples/search/query.rb
metasploit-model-2.0.2 spec/support/shared/examples/search/query.rb
metasploit-model-2.0.1 spec/support/shared/examples/search/query.rb