Skip to content

Commit b67a64f

Browse files
committed
add itr_skippable_tests.response_tests metric
1 parent 668b820 commit b67a64f

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

lib/datadog/ci/test_optimisation/component.rb

+4
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,13 @@
55
require "datadog/core/utils/forking"
66

77
require_relative "../ext/test"
8+
require_relative "../ext/telemetry"
89
require_relative "../ext/transport"
910

1011
require_relative "../git/local_repository"
1112

1213
require_relative "../utils/parsing"
14+
require_relative "../utils/telemetry"
1315

1416
require_relative "coverage/event"
1517
require_relative "skippable"
@@ -239,6 +241,8 @@ def fetch_skippable_tests(test_session:, git_tree_upload_worker:)
239241
Datadog.logger.debug { "Fetched skippable tests: \n #{@skippable_tests}" }
240242
Datadog.logger.debug { "Found #{@skippable_tests.count} skippable tests." }
241243
Datadog.logger.debug { "ITR correlation ID: #{@correlation_id}" }
244+
245+
Utils::Telemetry.inc(Ext::Telemetry::METRIC_ITR_SKIPPABLE_TESTS_RESPONSE_TESTS, @skippable_tests.count)
242246
end
243247

244248
def code_coverage_mode

lib/datadog/ci/test_optimisation/skippable.rb

+3
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,12 @@
22

33
require "json"
44

5+
require_relative "../ext/telemetry"
56
require_relative "../ext/transport"
67
require_relative "../ext/test"
8+
require_relative "../transport/telemetry"
79
require_relative "../utils/test_run"
10+
require_relative "../utils/telemetry"
811

912
module Datadog
1013
module CI

spec/datadog/ci/test_optimisation/component_spec.rb

+4-2
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
fetch_skippable_tests: instance_double(
6565
Datadog::CI::TestOptimisation::Skippable::Response,
6666
correlation_id: "42",
67-
tests: Set.new(["suite.test."])
67+
tests: Set.new(["suite.test.", "suite.test2."])
6868
)
6969
)
7070
end
@@ -79,10 +79,12 @@
7979
expect(component.skipping_tests?).to be true
8080

8181
expect(component.correlation_id).to eq("42")
82-
expect(component.skippable_tests).to eq(Set.new(["suite.test."]))
82+
expect(component.skippable_tests).to eq(Set.new(["suite.test.", "suite.test2."]))
8383

8484
expect(git_worker).to have_received(:wait_until_done)
8585
end
86+
87+
it_behaves_like "emits telemetry metric", :inc, "itr_skippable_tests.response_tests", 2
8688
end
8789

8890
context "when remote configuration call returned correct response with strings instead of bools" do

0 commit comments

Comments
 (0)