Sha256: 73ecb2465e9a4338e39cd28690c9fb48acaa022661836a11508656d3a4e9821f

Contents?: true

Size: 1.3 KB

Versions: 14

Compression:

Stored size: 1.3 KB

Contents

# frozen_string_literal: true

require_relative "event"
require_relative "../../ext/telemetry"
require_relative "../../transport/event_platform_transport"
require_relative "../../transport/telemetry"

module Datadog
  module CI
    module TestOptimisation
      module Coverage
        class Transport < Datadog::CI::Transport::EventPlatformTransport
          private

          def telemetry_endpoint_tag
            Ext::Telemetry::Endpoint::CODE_COVERAGE
          end

          def send_payload(encoded_payload)
            api.citestcov_request(
              path: Ext::Transport::TEST_COVERAGE_INTAKE_PATH,
              payload: encoded_payload
            )
          end

          def encode_events(events)
            events.filter_map do |event|
              unless event.valid?
                CI::Transport::Telemetry.endpoint_payload_dropped(1, endpoint: telemetry_endpoint_tag)
                next
              end

              encoded = encoder.encode(event)
              next if event_too_large?(event, encoded)

              encoded
            end
          end

          def write_payload_header(packer)
            packer.write_map_header(2)
            packer.write("version")
            packer.write(2)

            packer.write("coverages")
          end
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
datadog-ci-1.14.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.13.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.12.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.11.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.10.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.9.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.8.1 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.8.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.7.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.6.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.5.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.4.1 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.4.0 lib/datadog/ci/test_optimisation/coverage/transport.rb
datadog-ci-1.3.0 lib/datadog/ci/test_optimisation/coverage/transport.rb