Sha256: 8e2f375ef083cfadd134810d80509697df7fd41b20adddd310ba6d02fc5199eb

Contents?: true

Size: 1.24 KB

Versions: 20

Compression:

Stored size: 1.24 KB

Contents

# frozen_string_literal: true

require_relative "../test_v2"
require_relative "../test_session"
require_relative "../test_module"
require_relative "../test_suite"
require_relative "../span"

module Datadog
  module CI
    module TestVisibility
      module Serializers
        module Factories
          # This factory takes care of creating msgpack serializers when test-suite-level visibility is enabled
          module TestSuiteLevel
            module_function

            def serializer(trace, span, options: {})
              case span.type
              when Datadog::CI::Ext::AppTypes::TYPE_TEST
                Serializers::TestV2.new(trace, span, options: options)
              when Datadog::CI::Ext::AppTypes::TYPE_TEST_SESSION
                Serializers::TestSession.new(trace, span, options: options)
              when Datadog::CI::Ext::AppTypes::TYPE_TEST_MODULE
                Serializers::TestModule.new(trace, span, options: options)
              when Datadog::CI::Ext::AppTypes::TYPE_TEST_SUITE
                Serializers::TestSuite.new(trace, span, options: options)
              else
                Serializers::Span.new(trace, span, options: options)
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
datadog-ci-1.14.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.13.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.12.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.11.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.10.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.9.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.8.1 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.8.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.7.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.6.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.5.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.4.1 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.4.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.3.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.2.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.1.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.0.1 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.0.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.0.0.beta6 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-1.0.0.beta3 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb