From 1d0ca66783733ab4a4b6e8c8b519e53c06fa3616 Mon Sep 17 00:00:00 2001 From: Milos Kotlar Date: Tue, 14 Apr 2026 11:51:02 +0200 Subject: [PATCH] Fix FileVersionInfo test failure on Apple mobile with trimming Use OperatingSystem.IsWindows() instead of PlatformDetection.IsWindows for the OriginalTestAssemblyInternalName field initializer. On Apple mobile CI, EnableAggressiveTrimming=true causes PlatformDetection.IsWindows (which chains through RuntimeInformation.IsOSPlatform) to be incorrectly evaluated during cross-compilation trimming. OperatingSystem.IsWindows() is a compile-time constant in the BCL, immune to trimmer mis-evaluation. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../FileVersionInfoTest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/FileVersionInfoTest.cs b/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/FileVersionInfoTest.cs index bea5e9ad912fb8..6203898cd9c1ec 100644 --- a/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/FileVersionInfoTest.cs +++ b/src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/FileVersionInfoTest.cs @@ -11,7 +11,7 @@ public partial class FileVersionInfoTest : FileCleanupTestBase { private const string TestAssemblyFileName = "System.Diagnostics.FileVersionInfo.TestAssembly.dll"; // On Unix the internal name's extension is .exe if OutputType is exe even though the TargetExt is .dll. - private readonly string OriginalTestAssemblyInternalName = PlatformDetection.IsWindows ? + private readonly string OriginalTestAssemblyInternalName = OperatingSystem.IsWindows() ? "System.Diagnostics.FileVersionInfo.TestAssembly.dll" : "System.Diagnostics.FileVersionInfo.TestAssembly.exe"; private const string TestCsFileName = "Assembly1.cs";