diff --git a/Directory.Packages.props b/Directory.Packages.props
index e1aa02b7368..0a0c20e2d27 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -114,14 +114,13 @@
-
-
-
-
+
+
+
-
-
-
+
+
+
diff --git a/eng/imports/HostAgnostic.props b/eng/imports/HostAgnostic.props
index afd2133a5a2..795e7b11c16 100644
--- a/eng/imports/HostAgnostic.props
+++ b/eng/imports/HostAgnostic.props
@@ -66,7 +66,6 @@
-
diff --git a/eng/imports/UnitTests.targets b/eng/imports/UnitTests.targets
index 69d0ec46ccd..8fd55cef983 100644
--- a/eng/imports/UnitTests.targets
+++ b/eng/imports/UnitTests.targets
@@ -43,7 +43,7 @@
-
+
diff --git a/tests/Common/Test/xunit.runner.json b/tests/Common/Test/xunit.runner.json
new file mode 100644
index 00000000000..1fca20845e3
--- /dev/null
+++ b/tests/Common/Test/xunit.runner.json
@@ -0,0 +1,7 @@
+{
+ "$schema": "https://xunit.net/schema/current/xunit.runner.schema.json",
+ "diagnosticMessages": true,
+ "longRunningTestSeconds": 20,
+ "showLiveOutput": true,
+ "shadowCopy": false
+}
diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props
index 4880c416c28..5d4ecb7f0be 100644
--- a/tests/Directory.Build.props
+++ b/tests/Directory.Build.props
@@ -30,6 +30,7 @@
+
diff --git a/tests/Microsoft.VisualStudio.ProjectSystem.Managed.TestServices/AssertEx.cs b/tests/Microsoft.VisualStudio.ProjectSystem.Managed.TestServices/AssertEx.cs
index 8f23232aa43..da48e3fa086 100644
--- a/tests/Microsoft.VisualStudio.ProjectSystem.Managed.TestServices/AssertEx.cs
+++ b/tests/Microsoft.VisualStudio.ProjectSystem.Managed.TestServices/AssertEx.cs
@@ -1,6 +1,9 @@
// Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license. See the LICENSE.md file in the project root for more information.
using System.Collections;
+using System.Text;
+using Microsoft;
+using Microsoft.CodeAnalysis.Test.Utilities;
using Xunit.Sdk;
namespace Xunit;
@@ -9,11 +12,10 @@ internal static class AssertEx
{
public static void CollectionLength(IEnumerable collection, int expectedCount)
{
- int actualCount = collection.Count();
-
- if (actualCount != expectedCount)
+ var actualCount = collection.Count();
+ if (expectedCount != actualCount)
{
- throw new CollectionException(collection, expectedCount, actualCount);
+ throw CollectionException.ForMismatchedItemCount(expectedCount, actualCount, "Collection lengths not equal.");
}
}
@@ -22,28 +24,128 @@ public static void CollectionLength(IEnumerable collection, int expectedCount)
CollectionLength(collection.Cast