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.2-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.2 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.1-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.0-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.3.0 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.2.2-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.2.2 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.2.1-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.2.1 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.2.0-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.2.0 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.6-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.6 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.5-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.5 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.4-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.4 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.3-java spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb
appsignal-3.1.3 spec/lib/appsignal/event_formatter/elastic_search/search_formatter_spec.rb