From b3b08a170d77220462b0e03a5bc8e6e335341d58 Mon Sep 17 00:00:00 2001 From: Nicholas Shulman Date: Wed, 21 Aug 2024 23:07:05 -0700 Subject: [PATCH] Add more verbose logging if "CheckForMissingResources" fails. --- pwiz_tools/Skyline/TestData/ResourcesTest.cs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/pwiz_tools/Skyline/TestData/ResourcesTest.cs b/pwiz_tools/Skyline/TestData/ResourcesTest.cs index 77e83b0ce69..5ba38faa4c8 100644 --- a/pwiz_tools/Skyline/TestData/ResourcesTest.cs +++ b/pwiz_tools/Skyline/TestData/ResourcesTest.cs @@ -19,6 +19,7 @@ using System; using System.Collections.Generic; using System.Globalization; +using System.Linq; using System.Reflection; using System.Resources; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -28,6 +29,7 @@ using pwiz.ProteomeDatabase.API; using pwiz.ProteowizardWrapper; using pwiz.Skyline; +using pwiz.Skyline.Util.Extensions; using pwiz.SkylineTestUtil; namespace pwiz.SkylineTestData @@ -57,7 +59,18 @@ public void CheckForMissingResources() typeof(BiblioSpec.BlibBuild).Assembly // BiblioSpec }) { - foreach (var type in assembly.GetTypes()) + Type[] assemblyTypes; + try + { + assemblyTypes = assembly.GetTypes(); + } + catch (ReflectionTypeLoadException reflectionTypeLoadException) + { + // Write out the "LoaderExceptions" property because it is not included in this exception's ToString() + Console.Out.WriteLine("Exception getting types for assembly {0}:\r\n{1}\r\nLoaderExceptions property:{2}", assembly.FullName, reflectionTypeLoadException, TextUtil.LineSeparate(reflectionTypeLoadException.LoaderExceptions?.Select(e=>e.ToString())) ?? "null"); + throw; + } + foreach (var type in assemblyTypes) { if (!IsResourceType(type)) {