public void FormatStacktraceWithoutDebugSymbolsTest()
        {
            string stackTraceStr = @"  at RaygunXamarinTest.Net.HttpApiClient+<EnsureSuccessAsync>c__async7.MoveNext () <0xc2b59c + 0x00670> in <06b44c3216694065a06dc13af99a121f#a65e7e6904709cacfd8634d732fe31fb>
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) <0x47ec74 + 0x00118> in <15e850188d9f425bbeae90f0bbc51e17#a65e7e6904709cacfd8634d732fe31fb>
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) <0x47ebac + 0x000bf> in <15e850188d9f425bbeae90f0bbc51e17#a65e7e6904709cacfd8634d732fe31fb>
  at System.Runtime.CompilerServices.TaskAwaiter.GetResult () <0x47eb68 + 0x0001f> in <15e850188d9f425bbeae90f0bbc51e17#a65e7e6904709cacfd8634d732fe31fb>
  at RaygunXamarinTest.Net.HttpApiClient+<GetClientResponse>c__async6.MoveNext () <0xb89040 + 0x00407> in <06b44c3216694065a06dc13af99a121f#a65e7e6904709cacfd8634d732fe31fb>
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) <0x47ec74 + 0x00118> in <15e850188d9f425bbeae90f0bbc51e17#a65e7e6904709cacfd8634d732fe31fb>
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) <0x47ebac + 0x000bf> in <15e850188d9f425bbeae90f0bbc51e17#a65e7e6904709cacfd8634d732fe31fb>
  at System.Runtime.CompilerServices.TaskAwaiter`1[TResult].GetResult () <0x47ee98 + 0x0002f> in <15e850188d9f425bbeae90f0bbc51e17#a65e7e6904709cacfd8634d732fe31fb>
  at RaygunXamarinTest.Net.HttpApiClient+<PostJsonAsync>c__async2.MoveNext () <0xb88598 + 0x0019b> in <06b44c3216694065a06dc13af99a121f#a65e7e6904709cacfd8634d732fe31fb>";

            MyTestException exception = new MyTestException("Exception test message", stackTraceStr);
            var             message   = RaygunErrorMessageBuilder.Build(exception);

            foreach (var line in message.StackTrace)
            {
                Console.WriteLine(line.ToString() + "\n");
            }

            Assert.IsNotEmpty(message.ClassName);
            Assert.IsNotNull(message.StackTrace);
            Assert.IsNotEmpty(message.StackTrace);

            var lineOne = message.StackTrace.FirstOrDefault();

            Assert.IsNotNullOrEmpty(lineOne.ClassName);
            Assert.IsNotNullOrEmpty(lineOne.MethodName);
        }
        public void FormatStacktraceWithDebugSymbolsTest()
        {
            string stackTraceStr = @" at XamarinIOSSingleViewTest.AppDelegate+<Bar>d__8.MoveNext () [0x000ad] in C:\Dev\Tests\XamarinIOSTestApplication\XamarinIOSSingleViewTest\AppDelegate.cs:68 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /Library/Frameworks/Xamarin.iOS.framework/system/runtime/exceptionservices/exceptionservicescommon.cs:143 
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00047] in /Library/Frameworks/Xamarin.iOS.framework/system/runtime/compilerservices/TaskAwaiter.cs:187 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x0002e] in /Library/Frameworks/Xamarin.iOS.framework/system/runtime/compilerservices/TaskAwaiter.cs:156 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x0000b] in /Library/Frameworks/Xamarin.iOS.framework/system/runtime/compilerservices/TaskAwaiter.cs:128 
  at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in /Library/Frameworks/Xamarin.iOS.framework/system/runtime/compilerservices/TaskAwaiter.cs:113 
  at XamarinIOSSingleViewTest.AppDelegate+<Foo>d__7.MoveNext () [0x000cf] in C:\Dev\Tests\XamarinIOSTestApplication\XamarinIOSSingleViewTest\AppDelegate.cs:58";

            MyTestException exception = new MyTestException("Exception test message", stackTraceStr);
            var             message   = RaygunErrorMessageBuilder.Build(exception);

            foreach (var line in message.StackTrace)
            {
                Console.WriteLine(line.ToString() + "\n");
            }

            Assert.IsNotEmpty(message.ClassName);
            Assert.IsNotNull(message.StackTrace);
            Assert.IsNotEmpty(message.StackTrace);

            var lineOne = message.StackTrace.FirstOrDefault();

            Assert.IsNotNullOrEmpty(lineOne.ClassName);
            Assert.IsNotNullOrEmpty(lineOne.MethodName);
        }