#region Copyright (c) 2002-2003, James W. Newkirk, Michael C. Two, Alexei A. Vorontsov, Charlie Poole, Philip A. Craig /************************************************************************************ ' ' Copyright 2002-2003 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov, Charlie Poole ' Copyright 2000-2002 Philip A. Craig ' ' This software is provided 'as-is', without any express or implied warranty. In no ' event will the authors be held liable for any damages arising from the use of this ' software. ' ' Permission is granted to anyone to use this software for any purpose, including ' commercial applications, and to alter it and redistribute it freely, subject to the ' following restrictions: ' ' 1. The origin of this software must not be misrepresented; you must not claim that ' you wrote the original software. If you use this software in a product, an ' acknowledgment (see the following) in the product documentation is required. ' ' Portions Copyright 2002-2003 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov, Charlie Poole ' or Copyright 2000-2002 Philip A. Craig ' ' 2. Altered source versions must be plainly marked as such, and must not be ' misrepresented as being the original software. ' ' 3. This notice may not be removed or altered from any source distribution. ' '***********************************************************************************/ #endregion namespace NUnit.Util { using System; using NUnit.Core; /// /// Summary description for UIHelper. /// public class UIHelper { private static bool AreNodesTheSame(Test testOne, Test testTwo) { if(testOne==null && testTwo!=null) return false; if(testTwo==null && testOne!=null) return false; if(testOne.GetType().FullName != testTwo.GetType().FullName) return false; if(testOne.ShouldRun ^ testTwo.ShouldRun) return false; return testOne.FullName.Equals(testTwo.FullName); } public static bool CompareTree(Test rootTestOriginal, Test rootTestNew) { if(!AreNodesTheSame(rootTestOriginal,rootTestNew)) return false; if((rootTestOriginal is TestSuite) && (rootTestNew is TestSuite)) { TestSuite originalSuite = (TestSuite)rootTestOriginal; TestSuite newSuite = (TestSuite)rootTestNew; int originalCount = originalSuite.Tests.Count; int newCount = newSuite.Tests.Count; if(originalCount!=newCount) { return false; } for(int i=0; i