From 55d2c4405a2b8b9a2538365ae45091f6be2aeb41 Mon Sep 17 00:00:00 2001 From: Luc Vieillescazes Date: Mon, 25 Mar 2024 15:51:51 +0100 Subject: [PATCH] Update broken test --- .../Custom/Autoloaded/InstrumentationTest.php | 27 +++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/tests/Integrations/Custom/Autoloaded/InstrumentationTest.php b/tests/Integrations/Custom/Autoloaded/InstrumentationTest.php index 35aae49a36..cc2be2a103 100644 --- a/tests/Integrations/Custom/Autoloaded/InstrumentationTest.php +++ b/tests/Integrations/Custom/Autoloaded/InstrumentationTest.php @@ -53,8 +53,15 @@ public function testInstrumentation() $this->fail("Go no response from request-dumper"); } - $this->assertCount(3, $response); + $this->assertCount(4, $response); $payloads = $this->readTelemetryPayloads($response); + + $isMetric = function (array $payload) { + return 'generate-metrics' === $payload['request_type']; + }; + $metrics = array_values(array_filter($payloads, $isMetric)); + $payloads = array_values(array_filter($payloads, function($p) use ($isMetric) { return !$isMetric($p); })); + $this->assertEquals("app-started", $payloads[0]["request_type"]); $this->assertContains([ "name" => "agent_host", @@ -70,6 +77,12 @@ public function testInstrumentation() })); // Not asserting app-closing, this is not expected to happen until shutdown + $this->assertCount(1, $metrics); + $this->assertEquals("generate-metrics", $metrics[0]["request_type"]); + $this->assertEquals("tracers", $metrics[0]["payload"]["series"][0]["namespace"]); + $this->assertEquals("dd.instrumentation_telemetry_data.tracers.spans_created", $metrics[0]["payload"]["series"][0]["metric"]); + $this->assertEquals(["integration_name:datadog"], $metrics[0]["payload"]["series"][0]["tags"]); + $this->call(GetSpec::create("autoloaded", "/pdo")); $response = $this->retrieveDumpedData(); @@ -77,8 +90,12 @@ public function testInstrumentation() $this->fail("Go no response from request-dumper"); } - $this->assertCount(3, $response); + $this->assertCount(4, $response); $payloads = $this->readTelemetryPayloads($response); + + $metrics = array_values(array_filter($payloads, $isMetric)); + $payloads = array_values(array_filter($payloads, function($p) use ($isMetric) { return !$isMetric($p); })); + $this->assertEquals("app-started", $payloads[0]["request_type"]); $this->assertEquals("app-dependencies-loaded", $payloads[1]["request_type"]); $this->assertEquals("app-integrations-change", $payloads[2]["request_type"]); @@ -105,5 +122,11 @@ public function testInstrumentation() 'auto_enabled' => null, ] ], $payloads[2]["payload"]["integrations"]); + + $this->assertCount(1, $metrics); + $this->assertEquals("generate-metrics", $metrics[0]["request_type"]); + $this->assertEquals("tracers", $metrics[0]["payload"]["series"][0]["namespace"]); + $this->assertEquals("dd.instrumentation_telemetry_data.tracers.spans_created", $metrics[0]["payload"]["series"][0]["metric"]); + $this->assertEquals(["integration_name:pdo"], $metrics[0]["payload"]["series"][0]["tags"]); } }