1 #region Copyright (c) 2002-2003, James W. Newkirk, Michael C. Two, Alexei A. Vorontsov, Charlie Poole, Philip A. Craig
2 /************************************************************************************
4 ' Copyright © 2002-2003 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov, Charlie Poole
5 ' Copyright © 2000-2003 Philip A. Craig
7 ' This software is provided 'as-is', without any express or implied warranty. In no
8 ' event will the authors be held liable for any damages arising from the use of this
11 ' Permission is granted to anyone to use this software for any purpose, including
12 ' commercial applications, and to alter it and redistribute it freely, subject to the
13 ' following restrictions:
15 ' 1. The origin of this software must not be misrepresented; you must not claim that
16 ' you wrote the original software. If you use this software in a product, an
17 ' acknowledgment (see the following) in the product documentation is required.
19 ' Portions Copyright © 2003 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov, Charlie Poole
20 ' or Copyright © 2000-2003 Philip A. Craig
22 ' 2. Altered source versions must be plainly marked as such, and must not be
23 ' misrepresented as being the original software.
25 ' 3. This notice may not be removed or altered from any source distribution.
27 '***********************************************************************************/
36 /// Summary description for StackTraceFilter.
38 public class StackTraceFilter
40 public static string Filter(string stack)
42 if(stack == null) return null;
43 StringWriter sw = new StringWriter();
44 StringReader sr = new StringReader(stack);
49 while ((line = sr.ReadLine()) != null)
51 if (!FilterLine(line))
62 static bool FilterLine(string line)
64 string[] patterns = new string[]
66 "NUnit.Core.TestCase",
67 "NUnit.Core.ExpectedExceptionTestCase",
68 "NUnit.Core.TemplateTestCase",
69 "NUnit.Core.TestResult",
70 "NUnit.Core.TestSuite",
71 "NUnit.Framework.Assertion",
72 "NUnit.Framework.Assert"
75 for (int i = 0; i < patterns.Length; i++)
77 if (line.IndexOf(patterns[i]) > 0)