datadog-ci 0.5.1 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +60 -1
  3. data/README.md +1 -1
  4. data/lib/datadog/ci/codeowners/matcher.rb +102 -0
  5. data/lib/datadog/ci/codeowners/parser.rb +42 -0
  6. data/lib/datadog/ci/codeowners/rule.rb +33 -0
  7. data/lib/datadog/ci/concurrent_span.rb +2 -1
  8. data/lib/datadog/ci/configuration/components.rb +15 -11
  9. data/lib/datadog/ci/configuration/settings.rb +15 -0
  10. data/lib/datadog/ci/contrib/cucumber/configuration/settings.rb +4 -1
  11. data/lib/datadog/ci/contrib/cucumber/ext.rb +7 -5
  12. data/lib/datadog/ci/contrib/cucumber/formatter.rb +138 -27
  13. data/lib/datadog/ci/contrib/cucumber/instrumentation.rb +2 -1
  14. data/lib/datadog/ci/contrib/minitest/configuration/settings.rb +4 -1
  15. data/lib/datadog/ci/contrib/minitest/ext.rb +6 -4
  16. data/lib/datadog/ci/contrib/minitest/helpers.rb +23 -0
  17. data/lib/datadog/ci/contrib/minitest/hooks.rb +34 -19
  18. data/lib/datadog/ci/contrib/minitest/patcher.rb +10 -0
  19. data/lib/datadog/ci/contrib/minitest/reporter.rb +50 -0
  20. data/lib/datadog/ci/contrib/minitest/runnable.rb +42 -0
  21. data/lib/datadog/ci/contrib/minitest/runner.rb +41 -0
  22. data/lib/datadog/ci/contrib/rspec/configuration/settings.rb +4 -1
  23. data/lib/datadog/ci/contrib/rspec/example.rb +55 -14
  24. data/lib/datadog/ci/contrib/rspec/example_group.rb +51 -0
  25. data/lib/datadog/ci/contrib/rspec/ext.rb +5 -4
  26. data/lib/datadog/ci/contrib/rspec/integration.rb +1 -1
  27. data/lib/datadog/ci/contrib/rspec/patcher.rb +14 -0
  28. data/lib/datadog/ci/contrib/rspec/runner.rb +57 -0
  29. data/lib/datadog/ci/contrib/settings.rb +1 -1
  30. data/lib/datadog/ci/ext/app_types.rb +2 -0
  31. data/lib/datadog/ci/ext/environment/providers/local_git.rb +8 -29
  32. data/lib/datadog/ci/ext/settings.rb +1 -0
  33. data/lib/datadog/ci/ext/test.rb +19 -6
  34. data/lib/datadog/ci/span.rb +33 -2
  35. data/lib/datadog/ci/test.rb +96 -1
  36. data/lib/datadog/ci/test_module.rb +1 -1
  37. data/lib/datadog/ci/test_session.rb +10 -2
  38. data/lib/datadog/ci/test_suite.rb +53 -2
  39. data/lib/datadog/ci/test_visibility/context/local.rb +3 -9
  40. data/lib/datadog/ci/test_visibility/null_recorder.rb +53 -0
  41. data/lib/datadog/ci/test_visibility/recorder.rb +52 -25
  42. data/lib/datadog/ci/test_visibility/serializers/base.rb +6 -5
  43. data/lib/datadog/ci/test_visibility/serializers/span.rb +1 -1
  44. data/lib/datadog/ci/test_visibility/serializers/test_module.rb +1 -1
  45. data/lib/datadog/ci/test_visibility/serializers/test_session.rb +1 -1
  46. data/lib/datadog/ci/test_visibility/serializers/test_suite.rb +1 -1
  47. data/lib/datadog/ci/test_visibility/serializers/test_v1.rb +1 -1
  48. data/lib/datadog/ci/utils/configuration.rb +15 -0
  49. data/lib/datadog/ci/utils/git.rb +70 -0
  50. data/lib/datadog/ci/version.rb +2 -2
  51. data/lib/datadog/ci.rb +40 -56
  52. metadata +14 -82
  53. data/lib/datadog/ci/null_span.rb +0 -63
  54. data/sig/datadog/ci/concurrent_span.rbs +0 -23
  55. data/sig/datadog/ci/configuration/components.rbs +0 -21
  56. data/sig/datadog/ci/configuration/extensions.rbs +0 -9
  57. data/sig/datadog/ci/configuration/settings.rbs +0 -16
  58. data/sig/datadog/ci/contrib/cucumber/configuration/settings.rbs +0 -12
  59. data/sig/datadog/ci/contrib/cucumber/ext.rbs +0 -25
  60. data/sig/datadog/ci/contrib/cucumber/formatter.rbs +0 -35
  61. data/sig/datadog/ci/contrib/cucumber/instrumentation.rbs +0 -16
  62. data/sig/datadog/ci/contrib/cucumber/integration.rbs +0 -26
  63. data/sig/datadog/ci/contrib/cucumber/patcher.rbs +0 -15
  64. data/sig/datadog/ci/contrib/integration.rbs +0 -44
  65. data/sig/datadog/ci/contrib/minitest/configuration/settings.rbs +0 -12
  66. data/sig/datadog/ci/contrib/minitest/ext.rbs +0 -23
  67. data/sig/datadog/ci/contrib/minitest/hooks.rbs +0 -19
  68. data/sig/datadog/ci/contrib/minitest/integration.rbs +0 -26
  69. data/sig/datadog/ci/contrib/minitest/patcher.rbs +0 -15
  70. data/sig/datadog/ci/contrib/rspec/configuration/settings.rbs +0 -12
  71. data/sig/datadog/ci/contrib/rspec/example.rbs +0 -20
  72. data/sig/datadog/ci/contrib/rspec/ext.rbs +0 -23
  73. data/sig/datadog/ci/contrib/rspec/integration.rbs +0 -26
  74. data/sig/datadog/ci/contrib/rspec/patcher.rbs +0 -15
  75. data/sig/datadog/ci/contrib/settings.rbs +0 -25
  76. data/sig/datadog/ci/ext/app_types.rbs +0 -14
  77. data/sig/datadog/ci/ext/environment/extractor.rbs +0 -25
  78. data/sig/datadog/ci/ext/environment/providers/appveyor.rbs +0 -48
  79. data/sig/datadog/ci/ext/environment/providers/aws_code_pipeline.rbs +0 -19
  80. data/sig/datadog/ci/ext/environment/providers/azure.rbs +0 -56
  81. data/sig/datadog/ci/ext/environment/providers/base.rbs +0 -71
  82. data/sig/datadog/ci/ext/environment/providers/bitbucket.rbs +0 -37
  83. data/sig/datadog/ci/ext/environment/providers/bitrise.rbs +0 -41
  84. data/sig/datadog/ci/ext/environment/providers/buddy.rbs +0 -37
  85. data/sig/datadog/ci/ext/environment/providers/buildkite.rbs +0 -45
  86. data/sig/datadog/ci/ext/environment/providers/circleci.rbs +0 -41
  87. data/sig/datadog/ci/ext/environment/providers/codefresh.rbs +0 -25
  88. data/sig/datadog/ci/ext/environment/providers/github_actions.rbs +0 -42
  89. data/sig/datadog/ci/ext/environment/providers/gitlab.rbs +0 -57
  90. data/sig/datadog/ci/ext/environment/providers/jenkins.rbs +0 -35
  91. data/sig/datadog/ci/ext/environment/providers/local_git.rbs +0 -66
  92. data/sig/datadog/ci/ext/environment/providers/teamcity.rbs +0 -17
  93. data/sig/datadog/ci/ext/environment/providers/travis.rbs +0 -35
  94. data/sig/datadog/ci/ext/environment/providers/user_defined_tags.rbs +0 -33
  95. data/sig/datadog/ci/ext/environment/providers.rbs +0 -13
  96. data/sig/datadog/ci/ext/environment.rbs +0 -44
  97. data/sig/datadog/ci/ext/git.rbs +0 -53
  98. data/sig/datadog/ci/ext/settings.rbs +0 -14
  99. data/sig/datadog/ci/ext/test.rbs +0 -58
  100. data/sig/datadog/ci/ext/transport.rbs +0 -29
  101. data/sig/datadog/ci/null_span.rbs +0 -37
  102. data/sig/datadog/ci/span.rbs +0 -39
  103. data/sig/datadog/ci/test.rbs +0 -7
  104. data/sig/datadog/ci/test_module.rbs +0 -6
  105. data/sig/datadog/ci/test_session.rbs +0 -9
  106. data/sig/datadog/ci/test_suite.rbs +0 -6
  107. data/sig/datadog/ci/test_visibility/context/global.rbs +0 -39
  108. data/sig/datadog/ci/test_visibility/context/local.rbs +0 -23
  109. data/sig/datadog/ci/test_visibility/flush.rbs +0 -17
  110. data/sig/datadog/ci/test_visibility/recorder.rbs +0 -85
  111. data/sig/datadog/ci/test_visibility/serializers/base.rbs +0 -94
  112. data/sig/datadog/ci/test_visibility/serializers/factories/test_level.rbs +0 -13
  113. data/sig/datadog/ci/test_visibility/serializers/factories/test_suite_level.rbs +0 -13
  114. data/sig/datadog/ci/test_visibility/serializers/span.rbs +0 -18
  115. data/sig/datadog/ci/test_visibility/serializers/test_module.rbs +0 -26
  116. data/sig/datadog/ci/test_visibility/serializers/test_session.rbs +0 -26
  117. data/sig/datadog/ci/test_visibility/serializers/test_suite.rbs +0 -26
  118. data/sig/datadog/ci/test_visibility/serializers/test_v1.rbs +0 -23
  119. data/sig/datadog/ci/test_visibility/serializers/test_v2.rbs +0 -25
  120. data/sig/datadog/ci/test_visibility/transport.rbs +0 -35
  121. data/sig/datadog/ci/transport/api/base.rbs +0 -21
  122. data/sig/datadog/ci/transport/api/builder.rbs +0 -12
  123. data/sig/datadog/ci/transport/api/ci_test_cycle.rbs +0 -21
  124. data/sig/datadog/ci/transport/api/evp_proxy.rbs +0 -19
  125. data/sig/datadog/ci/transport/gzip.rbs +0 -9
  126. data/sig/datadog/ci/transport/http.rbs +0 -36
  127. data/sig/datadog/ci/utils/git.rbs +0 -11
  128. data/sig/datadog/ci/utils/test_run.rbs +0 -11
  129. data/sig/datadog/ci/utils/url.rbs +0 -9
  130. data/sig/datadog/ci/version.rbs +0 -16
  131. data/sig/datadog/ci.rbs +0 -35
@@ -1,58 +0,0 @@
1
- module Datadog
2
- module CI
3
- module Ext
4
- module Test
5
- CONTEXT_ORIGIN: String
6
-
7
- TAG_ARGUMENTS: String
8
-
9
- TAG_FRAMEWORK: String
10
-
11
- TAG_FRAMEWORK_VERSION: String
12
-
13
- TAG_NAME: String
14
-
15
- TAG_SKIP_REASON: String
16
-
17
- TAG_STATUS: String
18
-
19
- TAG_SUITE: String
20
-
21
- TAG_MODULE: String
22
-
23
- TAG_TRAITS: String
24
-
25
- TAG_TYPE: String
26
-
27
- TAG_COMMAND: String
28
-
29
- TAG_TEST_SESSION_ID: String
30
-
31
- TAG_TEST_MODULE_ID: String
32
-
33
- TAG_TEST_SUITE_ID: String
34
-
35
- SPECIAL_TAGS: Array[String]
36
-
37
- INHERITABLE_TAGS: Array[String]
38
-
39
- TAG_OS_ARCHITECTURE: String
40
-
41
- TAG_OS_PLATFORM: String
42
-
43
- TAG_RUNTIME_NAME: String
44
-
45
- TAG_RUNTIME_VERSION: String
46
- TAG_SPAN_KIND: String
47
-
48
- module Status
49
- PASS: String
50
-
51
- FAIL: String
52
-
53
- SKIP: String
54
- end
55
- end
56
- end
57
- end
58
- end
@@ -1,29 +0,0 @@
1
- module Datadog
2
- module CI
3
- module Ext
4
- module Transport
5
- DEFAULT_DD_SITE: "datadoghq.com"
6
-
7
- HEADER_DD_API_KEY: "DD-API-KEY"
8
-
9
- HEADER_CONTENT_TYPE: "Content-Type"
10
-
11
- HEADER_CONTENT_ENCODING: "Content-Encoding"
12
-
13
- HEADER_EVP_SUBDOMAIN: "X-Datadog-EVP-Subdomain"
14
-
15
- HEADER_CONTAINER_ID: "Datadog-Container-ID"
16
-
17
- EVP_PROXY_PATH_PREFIX: "/evp_proxy/v2/"
18
-
19
- TEST_VISIBILITY_INTAKE_HOST_PREFIX: "citestcycle-intake"
20
-
21
- TEST_VISIBILITY_INTAKE_PATH: "/api/v2/citestcycle"
22
-
23
- CONTENT_TYPE_MESSAGEPACK: "application/msgpack"
24
-
25
- CONTENT_ENCODING_GZIP: "gzip"
26
- end
27
- end
28
- end
29
- end
@@ -1,37 +0,0 @@
1
- module Datadog
2
- module CI
3
- class NullSpan < Span
4
- def initialize: () -> void
5
-
6
- def id: () -> nil
7
-
8
- def name: () -> nil
9
-
10
- def service: () -> nil
11
-
12
- def span_type: () -> nil
13
-
14
- def passed!: () -> nil
15
-
16
- def failed!: (?exception: untyped?) -> nil
17
-
18
- def skipped!: (?exception: untyped?, ?reason: untyped?) -> nil
19
-
20
- def get_tag: (untyped key) -> nil
21
-
22
- def set_tag: (untyped key, untyped value) -> nil
23
-
24
- def set_metric: (untyped key, untyped value) -> nil
25
-
26
- def finish: () -> nil
27
-
28
- def set_tags: (untyped tags) -> nil
29
-
30
- def set_environment_runtime_tags: () -> nil
31
-
32
- def set_default_tags: () -> nil
33
-
34
- def to_s: () -> untyped
35
- end
36
- end
37
- end
@@ -1,39 +0,0 @@
1
- module Datadog
2
- module CI
3
- class Span
4
- @tracer_span: Datadog::Tracing::SpanOperation
5
-
6
- attr_reader tracer_span: Datadog::Tracing::SpanOperation
7
-
8
- def initialize: (Datadog::Tracing::SpanOperation tracer_span) -> void
9
-
10
- def id: () -> Integer
11
-
12
- def name: () -> String
13
-
14
- def service: () -> String
15
-
16
- def passed!: () -> void
17
-
18
- def failed!: (?exception: untyped?) -> void
19
-
20
- def skipped!: (?exception: untyped?, ?reason: String?) -> void
21
-
22
- def get_tag: (String key) -> untyped?
23
-
24
- def set_tag: (String key, untyped? value) -> void
25
-
26
- def set_metric: (String key, untyped value) -> void
27
-
28
- def set_tags: (Hash[untyped, untyped] tags) -> void
29
-
30
- def finish: () -> void
31
-
32
- def span_type: () -> String
33
-
34
- def set_environment_runtime_tags: () -> void
35
-
36
- def set_default_tags: () -> void
37
- end
38
- end
39
- end
@@ -1,7 +0,0 @@
1
- module Datadog
2
- module CI
3
- class Test < Span
4
- def finish: () -> void
5
- end
6
- end
7
- end
@@ -1,6 +0,0 @@
1
- module Datadog
2
- module CI
3
- class TestModule < ConcurrentSpan
4
- end
5
- end
6
- end
@@ -1,9 +0,0 @@
1
- module Datadog
2
- module CI
3
- class TestSession < ConcurrentSpan
4
- @inheritable_tags: Hash[untyped, untyped]
5
-
6
- def inheritable_tags: () -> Hash[untyped, untyped]
7
- end
8
- end
9
- end
@@ -1,6 +0,0 @@
1
- module Datadog
2
- module CI
3
- class TestSuite < ConcurrentSpan
4
- end
5
- end
6
- end
@@ -1,39 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Context
5
- class Global
6
- @mutex: Thread::Mutex
7
-
8
- @test_session: Datadog::CI::TestSession?
9
- @test_module: Datadog::CI::TestModule?
10
- @test_suites: Hash[String, Datadog::CI::TestSuite]
11
-
12
- def initialize: () -> void
13
-
14
- def fetch_or_activate_test_suite: (String test_suite_name) {() -> Datadog::CI::TestSuite} -> Datadog::CI::TestSuite
15
-
16
- def fetch_or_activate_test_module: () {() -> Datadog::CI::TestModule} -> Datadog::CI::TestModule
17
-
18
- def fetch_or_activate_test_session: () {() -> Datadog::CI::TestSession} -> Datadog::CI::TestSession
19
-
20
- def active_test_session: () -> Datadog::CI::TestSession?
21
-
22
- def active_test_suite: (String test_suite_name) -> Datadog::CI::TestSuite?
23
-
24
- def service: () -> String?
25
-
26
- def inheritable_session_tags: () -> Hash[untyped, untyped]
27
-
28
- def active_test_module: () -> Datadog::CI::TestModule?
29
-
30
- def deactivate_test_session!: () -> void
31
-
32
- def deactivate_test_module!: () -> void
33
-
34
- def deactivate_test_suite!: (String test_suite_name) -> void
35
- end
36
- end
37
- end
38
- end
39
- end
@@ -1,23 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Context
5
- class Local
6
- @key: Symbol
7
-
8
- def initialize: () -> void
9
-
10
- def activate_test!: (Datadog::CI::Test test) ?{ () -> untyped } -> void
11
-
12
- def deactivate_test!: (Datadog::CI::Test test) -> void
13
-
14
- def active_test: () -> Datadog::CI::Test?
15
-
16
- private
17
-
18
- def active_test=: (Datadog::CI::Test? test) -> untyped
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,17 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Flush
5
- module Tagging
6
- def get_trace: (Datadog::Tracing::TraceOperation trace_op) -> untyped
7
- end
8
- class Finished < Tracing::Flush::Finished
9
- prepend Tagging
10
- end
11
- class Partial < Tracing::Flush::Partial
12
- prepend Tagging
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,85 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- class Recorder
5
- @test_suite_level_visibility_enabled: bool
6
- @enabled: bool
7
-
8
- @environment_tags: Hash[String, String]
9
- @local_context: Datadog::CI::TestVisibility::Context::Local
10
- @global_context: Datadog::CI::TestVisibility::Context::Global
11
-
12
- @null_span: Datadog::CI::NullSpan
13
-
14
- attr_reader environment_tags: Hash[String, String]
15
- attr_reader test_suite_level_visibility_enabled: bool
16
- attr_reader enabled: bool
17
-
18
- def initialize: (?enabled: bool, ?test_suite_level_visibility_enabled: bool) -> void
19
-
20
- def trace_test: (String span_name, String test_suite_name, ?service: String?, ?tags: Hash[untyped, untyped]) ?{ (Datadog::CI::Span span) -> untyped } -> untyped
21
-
22
- def trace: (String span_type, String span_name, ?tags: Hash[untyped, untyped]) ?{ (Datadog::CI::Span span) -> untyped } -> untyped
23
-
24
- def start_test_session: (?service: String?, ?tags: Hash[untyped, untyped]) -> Datadog::CI::Span
25
-
26
- def start_test_module: (String test_module_name, ?service: String?, ?tags: Hash[untyped, untyped]) -> Datadog::CI::Span
27
-
28
- def start_test_suite: (String test_suite_name, ?service: String?, ?tags: Hash[untyped, untyped]) -> Datadog::CI::Span
29
-
30
- def active_test_session: () -> Datadog::CI::TestSession?
31
-
32
- def active_test_module: () -> Datadog::CI::TestModule?
33
-
34
- def active_test_suite: (String test_suite_name) -> Datadog::CI::TestSuite?
35
-
36
- def active_test: () -> Datadog::CI::Test?
37
-
38
- def active_span: () -> Datadog::CI::Span?
39
-
40
- def deactivate_test: (Datadog::CI::Test test) -> void
41
-
42
- def deactivate_test_session: () -> void
43
-
44
- def deactivate_test_module: () -> void
45
-
46
- def deactivate_test_suite: (String test_suite_name) -> void
47
-
48
- def create_datadog_span: (String span_name, ?span_options: Hash[untyped, untyped], ?tags: Hash[untyped, untyped]) ?{ (Datadog::CI::Span span) -> untyped } -> untyped
49
-
50
- def set_trace_origin: (Datadog::Tracing::TraceOperation trace) -> untyped
51
-
52
- private
53
-
54
- def build_test: (Datadog::Tracing::SpanOperation tracer_span, Hash[untyped, untyped] tags) -> Datadog::CI::Test
55
-
56
- def build_test_session: (Datadog::Tracing::SpanOperation tracer_span, Hash[untyped, untyped] tags) -> Datadog::CI::TestSession
57
-
58
- def build_test_module: (Datadog::Tracing::SpanOperation tracer_span, Hash[untyped, untyped] tags) -> Datadog::CI::TestModule
59
-
60
- def build_test_suite: (Datadog::Tracing::SpanOperation tracer_span, Hash[untyped, untyped] tags) -> Datadog::CI::TestSuite
61
-
62
- def build_span: (Datadog::Tracing::SpanOperation tracer_span, Hash[untyped, untyped] tags) -> Datadog::CI::Span
63
-
64
- def build_span_options: (String? service_name, String span_type, ?Hash[Symbol, untyped] other_options) -> Hash[Symbol, untyped]
65
-
66
- def set_initial_tags: (Datadog::CI::Span ci_span, Hash[untyped, untyped] tags) -> void
67
-
68
- # the type (Datadog::CI::TestSession | Datadog::Tracing::SpanOperation) screams of wrong/mising abstraction
69
- def set_session_context: (Hash[untyped, untyped] tags, ?Datadog::CI::TestSession | Datadog::Tracing::SpanOperation? test_session) -> void
70
-
71
- def set_suite_context: (Hash[untyped, untyped] tags, ?span: Datadog::Tracing::SpanOperation, ?name: String) -> void
72
-
73
- def set_module_context: (Hash[untyped, untyped] tags, ?Datadog::CI::TestModule | Datadog::Tracing::SpanOperation? test_module) -> void
74
-
75
- def null_span: () -> Datadog::CI::Span
76
-
77
- def skip_tracing: (?untyped block) -> untyped
78
-
79
- def start_datadog_tracer_span: (String span_name, Hash[untyped, untyped] span_options) ?{ (untyped) -> untyped } -> untyped
80
-
81
- def set_inherited_globals: (Hash[untyped, untyped] tags) -> void
82
- end
83
- end
84
- end
85
- end
@@ -1,94 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- class Base
6
- MINIMUM_TIMESTAMP_NANO: 946684800000000000
7
- MINIMUM_DURATION_NANO: 0
8
- MAXIMUM_DURATION_NANO: 9223372036854775807
9
-
10
- CONTENT_FIELDS: Array[String | Hash[String, String]]
11
- REQUIRED_FIELDS: Array[String]
12
-
13
- @content_fields_count: Integer
14
- @start: Integer
15
- @duration: Integer
16
- @meta: Hash[untyped, untyped]
17
- @errors: Hash[String, Set[String]]
18
- @validated: bool
19
-
20
- attr_reader trace: Datadog::Tracing::TraceSegment
21
- attr_reader span: Datadog::Tracing::Span
22
- attr_reader meta: Hash[untyped, untyped]
23
-
24
- def initialize: (Datadog::Tracing::TraceSegment trace, Datadog::Tracing::Span span) -> void
25
-
26
- def to_msgpack: (?untyped? packer) -> untyped
27
-
28
- def valid?: () -> bool
29
- def validate!: () -> void
30
- def validation_errors: () -> Hash[String, Set[String]]
31
-
32
- def content_fields: () -> ::Array[String | Hash[String, String]]
33
- def content_map_size: () -> Integer
34
-
35
- def runtime_id: () -> String
36
-
37
- def trace_id: () -> String
38
-
39
- def span_id: () -> String
40
-
41
- def parent_id: () -> String
42
-
43
- def test_session_id: () -> Integer?
44
-
45
- def test_module_id: () -> Integer?
46
-
47
- def test_suite_id: () -> Integer?
48
-
49
- def type: () -> nil
50
-
51
- def version: () -> 1
52
-
53
- def span_type: () -> String
54
-
55
- def name: () -> String
56
-
57
- def resource: () -> String
58
-
59
- def service: () -> String
60
-
61
- def start: () -> Integer
62
-
63
- def duration: () -> Integer
64
-
65
- def metrics: () -> Hash[String, untyped]
66
-
67
- def error: () -> Integer
68
-
69
- def self.calculate_content_map_size: (Array[String | Hash[String, String]] fields_list) -> Integer
70
-
71
- private
72
-
73
- def validate_start_time!: () -> void
74
- def validate_duration!: () -> void
75
- def validate_required_fields!: () -> void
76
- def validate_required!: (String field) -> void
77
- def validate_greater_than_or_equal!: (String field, Integer value) -> void
78
- def validate_less_than_or_equal!: (String field, Integer value) -> void
79
- def add_error: (String field, String message) -> void
80
-
81
- def required_fields: () -> Array[String]
82
-
83
- def write_field: (untyped packer, String field_name, ?String? method) -> untyped
84
- def time_nano: (Time time) -> Integer
85
- def duration_nano: (Float duration) -> Integer
86
-
87
- def to_integer: (String? value) -> Integer?
88
-
89
- def content_fields_count: () -> Integer
90
- end
91
- end
92
- end
93
- end
94
- end
@@ -1,13 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- module Factories
6
- module TestLevel
7
- def self?.serializer: (Datadog::Tracing::TraceSegment trace, Datadog::Tracing::Span span) -> Datadog::CI::TestVisibility::Serializers::Base
8
- end
9
- end
10
- end
11
- end
12
- end
13
- end
@@ -1,13 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- module Factories
6
- module TestSuiteLevel
7
- def self?.serializer: (Datadog::Tracing::TraceSegment trace, Datadog::Tracing::Span span) -> Datadog::CI::TestVisibility::Serializers::Base
8
- end
9
- end
10
- end
11
- end
12
- end
13
- end
@@ -1,18 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- class Span < Base
6
- CONTENT_FIELDS: Array[String | Hash[String, String]]
7
- CONTENT_MAP_SIZE: Integer
8
- REQUIRED_FIELDS: Array[String]
9
-
10
- def required_fields: () -> Array[String]
11
- def content_fields: () -> Array[String | Hash[String, String]]
12
- def content_map_size: () -> Integer
13
- def type: () -> "span"
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,26 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- class TestModule < Base
6
- CONTENT_FIELDS: Array[String | Hash[String, String]]
7
- CONTENT_MAP_SIZE: Integer
8
- REQUIRED_FIELDS: Array[String]
9
-
10
- def content_fields: () -> Array[String | Hash[String, String]]
11
- def content_map_size: () -> Integer
12
-
13
- def type: () -> ::String
14
-
15
- def name: () -> ::String
16
-
17
- def resource: () -> ::String
18
-
19
- private
20
-
21
- def required_fields: () -> Array[String]
22
- end
23
- end
24
- end
25
- end
26
- end
@@ -1,26 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- class TestSession < Base
6
- CONTENT_FIELDS: Array[String | Hash[String, String]]
7
- CONTENT_MAP_SIZE: Integer
8
- REQUIRED_FIELDS: Array[String]
9
-
10
- def content_fields: () -> Array[String | Hash[String, String]]
11
- def content_map_size: () -> Integer
12
-
13
- def type: () -> ::String
14
-
15
- def name: () -> ::String
16
-
17
- def resource: () -> ::String
18
-
19
- private
20
-
21
- def required_fields: () -> Array[String]
22
- end
23
- end
24
- end
25
- end
26
- end
@@ -1,26 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- class TestSuite < Base
6
- CONTENT_FIELDS: Array[String | Hash[String, String]]
7
- CONTENT_MAP_SIZE: Integer
8
- REQUIRED_FIELDS: Array[String]
9
-
10
- def content_fields: () -> Array[String | Hash[String, String]]
11
- def content_map_size: () -> Integer
12
-
13
- def type: () -> ::String
14
-
15
- def name: () -> ::String
16
-
17
- def resource: () -> ::String
18
-
19
- private
20
-
21
- def required_fields: () -> Array[String]
22
- end
23
- end
24
- end
25
- end
26
- end
@@ -1,23 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- class TestV1 < Base
6
- CONTENT_FIELDS: Array[String | Hash[String, String]]
7
- CONTENT_MAP_SIZE: Integer
8
- REQUIRED_FIELDS: Array[String]
9
-
10
- def required_fields: () -> Array[String]
11
- def content_fields: () -> Array[String | Hash[String, String]]
12
- def content_map_size: () -> Integer
13
-
14
- def type: () -> ::String
15
-
16
- def name: () -> ::String
17
-
18
- def resource: () -> ::String
19
- end
20
- end
21
- end
22
- end
23
- end
@@ -1,25 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- module Serializers
5
- class TestV2 < TestV1
6
- CONTENT_FIELDS: ::Array[String | ::Hash[::String, String]]
7
-
8
- CONTENT_MAP_SIZE: Integer
9
-
10
- REQUIRED_FIELDS: ::Array[String]
11
-
12
- def content_fields: () -> ::Array[String | ::Hash[::String, String]]
13
-
14
- def content_map_size: () -> Integer
15
-
16
- def version: () -> 2
17
-
18
- private
19
-
20
- def required_fields: () -> Array[String]
21
- end
22
- end
23
- end
24
- end
25
- end
@@ -1,35 +0,0 @@
1
- module Datadog
2
- module CI
3
- module TestVisibility
4
- class Transport
5
- DEFAULT_MAX_PAYLOAD_SIZE: Integer
6
-
7
- attr_reader serializers_factory: singleton(Datadog::CI::TestVisibility::Serializers::Factories::TestLevel) | singleton(Datadog::CI::TestVisibility::Serializers::Factories::TestSuiteLevel)
8
- attr_reader dd_env: String?
9
- attr_reader api: Datadog::CI::Transport::Api::Base
10
- attr_reader max_payload_size: Integer
11
-
12
- @dd_env: String?
13
- @serializers_factory: singleton(Datadog::CI::TestVisibility::Serializers::Factories::TestLevel) | singleton(Datadog::CI::TestVisibility::Serializers::Factories::TestSuiteLevel)
14
- @max_payload_size: Integer
15
-
16
- def initialize: (
17
- api: Datadog::CI::Transport::Api::Base,
18
- ?dd_env: ::String?,
19
- ?serializers_factory: singleton(Datadog::CI::TestVisibility::Serializers::Factories::TestLevel) | singleton(Datadog::CI::TestVisibility::Serializers::Factories::TestSuiteLevel),
20
- ?max_payload_size: Integer
21
- ) -> void
22
-
23
- def send_traces: (Array[Datadog::Tracing::TraceSegment] traces) -> ::Array[Datadog::CI::Transport::HTTP::ResponseDecorator]
24
-
25
- private
26
-
27
- def send_payload: (String encoded_payload) -> Datadog::CI::Transport::HTTP::ResponseDecorator
28
- def pack_events: (Array[String] encoded_events) -> String
29
- def encode_traces: (Array[Datadog::Tracing::TraceSegment] traces) -> ::Array[String]
30
- def encode_span: (Datadog::Tracing::TraceSegment trace, Datadog::Tracing::Span span) -> String?
31
- def encoder: () -> singleton(Datadog::Core::Encoding::MsgpackEncoder)
32
- end
33
- end
34
- end
35
- end