コード例 #1
0
    public void StackFrameWithoutFile_Mono()
    {
        string input = @"  at SampleTests.SampleTest () [0x00000]";

        string result = StackFrameTransformer.TransformFrame(input);

        Assert.Equal("" + input, result);
    }
コード例 #2
0
    public void StackFrameWithFile_Mono()
    {
        string input    = @"  at SampleTests.SampleTest () [0x00000] in /Users/brad/sample/SampleTests.cs:15";
        string expected = @"  /Users/brad/sample/SampleTests.cs(15,0): at SampleTests.SampleTest () [0x00000]";

        string result = StackFrameTransformer.TransformFrame(input);

        Assert.Equal(expected, result);
    }
コード例 #3
0
    public void StackFrameWithFile_Windows()
    {
        string input    = @"   at SampleTests.SampleTest() in C:\Users\Brad\sample\SampleTests.cs:line 15";
        string expected = @"   C:\Users\Brad\sample\SampleTests.cs(15,0): at SampleTests.SampleTest()";

        string result = StackFrameTransformer.TransformFrame(input);

        Assert.Equal(expected, result);
    }
コード例 #4
0
ファイル: StandardUapVisitor.cs プロジェクト: sharwell/arcade
        void WriteStackTrace(string stackTrace)
        {
            if (string.IsNullOrWhiteSpace(stackTrace))
            {
                return;
            }

            Console.WriteLine("      Stack Trace:");

            foreach (var stackFrame in stackTrace.Split(new[] { Environment.NewLine }, StringSplitOptions.None))
            {
                Console.WriteLine($"         {StackFrameTransformer.TransformFrame(stackFrame, Directory.GetCurrentDirectory())}");
            }
        }
コード例 #5
0
    public void StackTrace_Mono()
    {
        string input    = @"
  at SampleTests.ThrowException () [0x00000] in /Users/brad/sample/SampleTests.cs:42
  at SampleTests.SampleTest () [0x00000] in /Users/brad/sample/SampleTests.cs:15
  at Sample.Main () [0x00000]
";
        string expected = @"
  /Users/brad/sample/SampleTests.cs(42,0): at SampleTests.ThrowException () [0x00000]
  /Users/brad/sample/SampleTests.cs(15,0): at SampleTests.SampleTest () [0x00000]
  at Sample.Main () [0x00000]
";

        string result = StackFrameTransformer.TransformStack(input);

        Assert.Equal(expected, result);
    }
コード例 #6
0
    public void StackTrace_Windows()
    {
        string input    = @"
   at SampleTests.ThrowException() in C:\Users\Brad\sample\SampleTests.cs:line 42
   at SampleTests.SampleTest() in C:\Users\Brad\sample\SampleTests.cs:line 15
   at Sample.Main()
";
        string expected = @"
   C:\Users\Brad\sample\SampleTests.cs(42,0): at SampleTests.ThrowException()
   C:\Users\Brad\sample\SampleTests.cs(15,0): at SampleTests.SampleTest()
   at Sample.Main()
";

        string result = StackFrameTransformer.TransformStack(input);

        Assert.Equal(expected, result);
    }
コード例 #7
0
        private void LogStackTrace(string stackTrace)
        {
            if (string.IsNullOrEmpty(stackTrace))
            {
                return;
            }

            Logger.LogMessage("      Stack Trace:");

            foreach (var stackFrame in stackTrace.Split(new[] { Environment.NewLine }, StringSplitOptions.None))
            {
                #if DISABLE_FEATURE_XUNIT_PRETTYSTACKTRACE
                Logger.LogImportantMessage($"        {stackFrame}");
                #else
                Logger.LogImportantMessage($"        {StackFrameTransformer.TransformFrame(stackFrame, null)}");
                #endif
            }
        }
コード例 #8
0
 public void NullStackFrame()
 {
     Assert.Null(StackFrameTransformer.TransformFrame(null));
 }