diff --git a/Tests/Tests.cs b/Tests/Tests.cs
index 5a989db..2d534e6 100644
--- a/Tests/Tests.cs
+++ b/Tests/Tests.cs
@@ -669,6 +669,28 @@ 01 KERNELBASE!WaitForSingleObjectEx+147
}
}
+ [Fact]
+ [Trait("Category", "Unit")]
+ public void E2ESymSrvXMLFramesModuleFileExtensionMissing() {
+ using (var csr = new StackResolver()) {
+ var pdbPath = @"srv*https://msdl.microsoft.com/download/symbols";
+ var input = "Frame = \r\n" +
+"Frame = \n" +
+"Frame = \r\n" +
+"\r\n" +
+"Frame = \n";
+
+ var ret = csr.ResolveCallstacks(input, pdbPath, false, null, false, false, true, false, true, false, false, null);
+ var expected = @"00 ntdll!NtWaitForSingleObject+20
+01 KERNELBASE!WaitForSingleObjectEx+147
+02 sqldk!MemoryClerkInternal::AllocatePagesWithFailureMode+644
+03 VCRUNTIME140!__C_specific_handler+160 (d:\agent\_work\2\s\src\vctools\crt\vcruntime\src\eh\riscchandler.cpp:290)
+04 sqldk!Spinlock<244,2,1>::SpinToAcquireWithExponentialBackoff+349";
+ Assert.Equal(expected.Trim(), ret.Trim());
+ }
+ }
+
/// End-to-end test with stacks being resolved based on symbols from symsrv, with a frame that needs "calculated base address" handling
[Fact][Trait("Category", "Unit")]
public void E2ESymSrvXMLFramesWithCalcBaseAddress() {