private static UnitTestProviderType DetermineUnitTestProviderType(IEnumerable<ITestFile> files)
{
bool hasMSTest = false;
foreach (var zipEntry in files)
{
// http://staxmanade.blogspot.com/2009/02/xunit-light-for-silverlight.html
if (zipEntry.FileName.Equals("XUnitLight.Silverlight.dll", StringComparison.OrdinalIgnoreCase))
return UnitTestProviderType.XUnitLight;
//http://xunitcontrib.codeplex.com/
if (zipEntry.FileName.ContainsIgnoreCase("xunitcontrib.runner.silverlight"))
return UnitTestProviderType.MSTestWithCustomProvider;
if (zipEntry.FileName.ContainsIgnoreCase("xunit.runner.silverlight"))
return UnitTestProviderType.XUnit;
if (zipEntry.FileName.ContainsIgnoreCase("unitdriven"))
return UnitTestProviderType.UnitDriven;
if (zipEntry.FileName.ContainsIgnoreCase("nunit"))
return UnitTestProviderType.NUnit;
if (zipEntry.FileName.Equals("Microsoft.Silverlight.Testing.dll", StringComparison.OrdinalIgnoreCase) ||
zipEntry.FileName.Equals("Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll", StringComparison.OrdinalIgnoreCase))
hasMSTest = true;
}
if (hasMSTest)
return UnitTestProviderType.MSTest;
return UnitTestProviderType.Undefined;
}