From b67a64f81d2dffc2f083a7aef999e5e4db3902eb Mon Sep 17 00:00:00 2001 From: Andrey Date: Mon, 29 Jul 2024 17:19:28 +0200 Subject: [PATCH] add itr_skippable_tests.response_tests metric --- lib/datadog/ci/test_optimisation/component.rb | 4 ++++ lib/datadog/ci/test_optimisation/skippable.rb | 3 +++ spec/datadog/ci/test_optimisation/component_spec.rb | 6 ++++-- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/datadog/ci/test_optimisation/component.rb b/lib/datadog/ci/test_optimisation/component.rb index a34b9924..b455f828 100644 --- a/lib/datadog/ci/test_optimisation/component.rb +++ b/lib/datadog/ci/test_optimisation/component.rb @@ -5,11 +5,13 @@ require "datadog/core/utils/forking" require_relative "../ext/test" +require_relative "../ext/telemetry" require_relative "../ext/transport" require_relative "../git/local_repository" require_relative "../utils/parsing" +require_relative "../utils/telemetry" require_relative "coverage/event" require_relative "skippable" @@ -239,6 +241,8 @@ def fetch_skippable_tests(test_session:, git_tree_upload_worker:) Datadog.logger.debug { "Fetched skippable tests: \n #{@skippable_tests}" } Datadog.logger.debug { "Found #{@skippable_tests.count} skippable tests." } Datadog.logger.debug { "ITR correlation ID: #{@correlation_id}" } + + Utils::Telemetry.inc(Ext::Telemetry::METRIC_ITR_SKIPPABLE_TESTS_RESPONSE_TESTS, @skippable_tests.count) end def code_coverage_mode diff --git a/lib/datadog/ci/test_optimisation/skippable.rb b/lib/datadog/ci/test_optimisation/skippable.rb index d5f0974f..8a63e71d 100644 --- a/lib/datadog/ci/test_optimisation/skippable.rb +++ b/lib/datadog/ci/test_optimisation/skippable.rb @@ -2,9 +2,12 @@ require "json" +require_relative "../ext/telemetry" require_relative "../ext/transport" require_relative "../ext/test" +require_relative "../transport/telemetry" require_relative "../utils/test_run" +require_relative "../utils/telemetry" module Datadog module CI diff --git a/spec/datadog/ci/test_optimisation/component_spec.rb b/spec/datadog/ci/test_optimisation/component_spec.rb index dec1b2e5..c05b306f 100644 --- a/spec/datadog/ci/test_optimisation/component_spec.rb +++ b/spec/datadog/ci/test_optimisation/component_spec.rb @@ -64,7 +64,7 @@ fetch_skippable_tests: instance_double( Datadog::CI::TestOptimisation::Skippable::Response, correlation_id: "42", - tests: Set.new(["suite.test."]) + tests: Set.new(["suite.test.", "suite.test2."]) ) ) end @@ -79,10 +79,12 @@ expect(component.skipping_tests?).to be true expect(component.correlation_id).to eq("42") - expect(component.skippable_tests).to eq(Set.new(["suite.test."])) + expect(component.skippable_tests).to eq(Set.new(["suite.test.", "suite.test2."])) expect(git_worker).to have_received(:wait_until_done) end + + it_behaves_like "emits telemetry metric", :inc, "itr_skippable_tests.response_tests", 2 end context "when remote configuration call returned correct response with strings instead of bools" do