Sha256: ad42421b0a8151127c14b2f8c8498c7de6c7c3f7e3d29cc6c5d9493c9b588361

Contents?: true

Size: 1.14 KB

Versions: 8

Compression:

Stored size: 1.14 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 citestcycle serializers when test-suite-level visibility is enabled
          module TestSuiteLevel
            module_function

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

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
datadog-ci-0.8.3 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-0.8.2 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-0.8.1 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-0.8.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-0.7.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-0.6.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-0.5.1 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb
datadog-ci-0.5.0 lib/datadog/ci/test_visibility/serializers/factories/test_suite_level.rb