Commit c66ac29dca8 for php.net

commit c66ac29dca879680b8d6dc0f0db697173b9d104e
Author: Levi Morrison <levi.morrison@datadoghq.com>
Date:   Mon Aug 24 10:21:29 2026 -0600

    Fix JUnit timing aggregation for long-running tests (#23438)

diff --git a/run-tests.php b/run-tests.php
index ce6bd94db1e..8728c0d7524 100755
--- a/run-tests.php
+++ b/run-tests.php
@@ -3681,6 +3681,7 @@ public function markTestAs(

         $time = $time ?? $this->getTimer($file_name);
         $this->record($suite, 'execution_time', $time);
+        $formatted_time = number_format($time, 4, '.', '');

         $escaped_details = htmlspecialchars($details, ENT_QUOTES, 'UTF-8');
         $escaped_details = preg_replace_callback('/[\0-\x08\x0B\x0C\x0E-\x1F]/', function ($c) {
@@ -3689,7 +3690,7 @@ public function markTestAs(
         $escaped_message = htmlspecialchars($message, ENT_QUOTES, 'UTF-8');

         $escaped_test_name = htmlspecialchars($file_name . ' (' . $test_name . ')', ENT_QUOTES);
-        $this->rootSuite['files'][$file_name]['xml'] = "<testcase name='$escaped_test_name' time='$time'>\n";
+        $this->rootSuite['files'][$file_name]['xml'] = "<testcase name='$escaped_test_name' time='$formatted_time'>\n";

         if (is_array($type)) {
             $output_type = $type[0] . 'ED';
@@ -3734,7 +3735,7 @@ private function getTimer(string $file_name)
         }

         if (isset($this->rootSuite['files'][$file_name]['total'])) {
-            return number_format($this->rootSuite['files'][$file_name]['total'], 4);
+            return $this->rootSuite['files'][$file_name]['total'];
         }

         return 0;