Sha256: 25ba85382ae46787037672c1f641db25bb3218701a8a97b10950d0ed3bdb4686

Contents?: true

Size: 1.55 KB

Versions: 19

Compression:

Stored size: 1.55 KB

Contents

require "logstash/devutils/rspec/spec_helper"
require "logstash/outputs/amazon_es/http_client"
require "java"

describe LogStash::Outputs::AES::HttpClient do
  context "successful" do
    it "should map correctly" do
      bulk_response = {"took"=>74, "errors"=>false, "items"=>[{"create"=>{"_index"=>"logstash-2014.11.17",
                                                                          "_type"=>"logs", "_id"=>"AUxTS2C55Jrgi-hC6rQF",
                                                                          "_version"=>1, "status"=>201}}]} 
      actual = LogStash::Outputs::AES::HttpClient.normalize_bulk_response(bulk_response)
      insist { actual } == {"errors"=> false}
    end
  end

  context "contains failures" do
    it "should map correctly" do
      bulk_response = {"took"=>71, "errors"=>true,
                       "items"=>[{"create"=>{"_index"=>"logstash-2014.11.17",
                                             "_type"=>"logs", "_id"=>"AUxTQ_OI5Jrgi-hC6rQB", "status"=>400,
                                             "error"=>"MapperParsingException[failed to parse]..."}}]}
      actual = LogStash::Outputs::AES::HttpClient.normalize_bulk_response(bulk_response)
      insist { actual } == {"errors"=> true, "statuses"=> [400]}
    end
  end

  describe "sniffing" do
    let(:base_options) { {:hosts => ["127.0.0.1"] }}
    let(:client) { LogStash::Outputs::AES::HttpClient.new(base_options.merge(client_opts)) }
    let(:transport) { client.client.transport }

    before do
      allow(transport).to receive(:reload_connections!)
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
logstash-output-amazon_es-6.0.0 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-2.0.1-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-2.0.1 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-1.1.0 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-1.1.0-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-1.0-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-1.0 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.3-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.3 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.2.0-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.2.0 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.3-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.3 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.2 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.2-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.1-java spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.1 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.0 spec/unit/outputs/elasticsearch/protocol_spec.rb
logstash-output-amazon_es-0.1.0-java spec/unit/outputs/elasticsearch/protocol_spec.rb