Sha256: cdc39af93129e2a44f42e4d26adc045dc4b13abcd484ff54763de4c95c697764

Contents?: true

Size: 1.37 KB

Versions: 19

Compression:

Stored size: 1.37 KB

Contents

describe Appsignal::EventFormatter::ElasticSearch::SearchFormatter do
  let(:klass)     { Appsignal::EventFormatter::ElasticSearch::SearchFormatter }
  let(:formatter) { klass.new }

  it "should register query.moped" do
    expect(
      Appsignal::EventFormatter.registered?('search.elasticsearch', klass)
    ).to be_true
  end

  describe "#format" do
    let(:payload) do
      {
        :name   => 'Search',
        :klass  => 'User',
        :search => {:index => 'users', :type => 'user', :q => 'John Doe'}
      }
    end

    it "should return a payload with name and sanitized body" do
      expect( formatter.format(payload) ).to eql([
        "Search: User",
        "{:index=>\"users\", :type=>\"user\", :q=>\"?\"}"
      ])
    end
  end

  describe "#sanitized_search" do
    let(:search) do
      {
        :index => 'users',
        :type  => 'user',
        :q     => 'John Doe',
        :other => 'Other'
      }
    end

    it "should sanitize non-whitelisted params" do
      expect(
        formatter.sanitized_search(search)
      ).to eql({:index => 'users', :type => 'user', :q => '?', :other => '?'})
    end

    it "should return nil string when search is nil" do
      expect( formatter.sanitized_search(nil) ).to be_nil
    end

    it "should return nil string when search is not a hash" do
      expect( formatter.sanitized_search([]) ).to be_nil
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
appsignal-2.0.6 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.5 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.5.beta.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.1.0.alpha.3 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.1.0.alpha.2 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.1.0.alpha.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.4 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.3 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.2 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.0 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-2.0.0.beta.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-1.4.0.beta.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-1.3.6 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-1.3.6.beta.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-1.3.5 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-1.3.5.beta.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-1.3.4 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-1.3.3 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb