Skip to content

Commit cab6a3e

Browse files
committed
#2871: Inner exception stack trace is missing from Assert.Collection failure (v2)
1 parent 5ef7b75 commit cab6a3e

3 files changed

Lines changed: 15 additions & 9 deletions

File tree

test/test.xunit.assert/Asserts/AsyncCollectionAssertsTests.cs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -175,13 +175,14 @@ public static void MismatchedElement()
175175
);
176176

177177
var collEx = Assert.IsType<CollectionException>(ex);
178-
Assert.Equal(
178+
Assert.StartsWith(
179179
"Assert.Collection() Failure: Item comparison failure" + Environment.NewLine +
180180
" ↓ (pos 1)" + Environment.NewLine +
181181
"Collection: [42, 2112]" + Environment.NewLine +
182182
"Error: Assert.Equal() Failure: Values differ" + Environment.NewLine +
183183
" Expected: 2113" + Environment.NewLine +
184-
" Actual: 2112",
184+
" Actual: 2112" + Environment.NewLine +
185+
" Stack Trace:",
185186
ex.Message
186187
);
187188
}
@@ -261,13 +262,14 @@ public static async Task MismatchedElementAsync()
261262
);
262263

263264
var collEx = Assert.IsType<CollectionException>(ex);
264-
Assert.Equal(
265+
Assert.StartsWith(
265266
"Assert.Collection() Failure: Item comparison failure" + Environment.NewLine +
266267
" ↓ (pos 1)" + Environment.NewLine +
267268
"Collection: [42, 2112]" + Environment.NewLine +
268269
"Error: Assert.Equal() Failure: Values differ" + Environment.NewLine +
269270
" Expected: 2113" + Environment.NewLine +
270-
" Actual: 2112",
271+
" Actual: 2112" + Environment.NewLine +
272+
" Stack Trace:",
271273
ex.Message
272274
);
273275
}

test/test.xunit.assert/Asserts/CollectionAssertsTests.cs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@ public static void NonEmptyCollection()
160160
);
161161
}
162162

163+
#if !NETCOREAPP2_0 // Unclear why this is failing only on .NET Core 2.0, but it passes with .NET 6 and .NET Framework 4.x
163164
[Fact]
164165
public static void MismatchedElement()
165166
{
@@ -173,16 +174,18 @@ public static void MismatchedElement()
173174
);
174175

175176
var collEx = Assert.IsType<CollectionException>(ex);
176-
Assert.Equal(
177+
Assert.StartsWith(
177178
"Assert.Collection() Failure: Item comparison failure" + Environment.NewLine +
178179
" ↓ (pos 1)" + Environment.NewLine +
179180
"Collection: [42, 2112]" + Environment.NewLine +
180181
"Error: Assert.Equal() Failure: Values differ" + Environment.NewLine +
181182
" Expected: 2113" + Environment.NewLine +
182-
" Actual: 2112",
183+
" Actual: 2112" + Environment.NewLine +
184+
" Stack Trace:",
183185
ex.Message
184186
);
185187
}
188+
#endif
186189
}
187190

188191
public class CollectionAsync
@@ -259,13 +262,14 @@ public static async Task MismatchedElementAsync()
259262
);
260263

261264
var collEx = Assert.IsType<CollectionException>(ex);
262-
Assert.Equal(
265+
Assert.StartsWith(
263266
"Assert.Collection() Failure: Item comparison failure" + Environment.NewLine +
264267
" ↓ (pos 1)" + Environment.NewLine +
265268
"Collection: [42, 2112]" + Environment.NewLine +
266269
"Error: Assert.Equal() Failure: Values differ" + Environment.NewLine +
267270
" Expected: 2113" + Environment.NewLine +
268-
" Actual: 2112",
271+
" Actual: 2112" + Environment.NewLine +
272+
" Stack Trace:",
269273
ex.Message
270274
);
271275
}

0 commit comments

Comments
 (0)