Sha256: de41075b589d9c63119bd1ba43375fdf4063f0e2c2539efb241cce6ae0d2c7c4

Contents?: true

Size: 1.37 KB

Versions: 50

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 search.elasticsearch" do
    expect(
      Appsignal::EventFormatter.registered?("search.elasticsearch", klass)
    ).to be_truthy
  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-allowlisted 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

50 entries across 50 versions & 1 rubygems

Version Path
appsignal-3.3.11-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.11 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.4.0-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.4.0 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.10-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.10 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.9-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.9 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.8-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.8 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.7-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.7 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.6-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.6 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.5-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.5 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.4-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.4 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.3-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.3 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb