private void RunTests(IList<ITestComponent> tests)
{
if (!tests.Any() || EditorApplication.isCompiling || EditorApplication.isPlayingOrWillChangePlaymode)
return;
FocusWindowIfItsOpen(GetType());
var testComponents = tests.Where(t => t is TestComponent).Cast<TestComponent>().ToList();
var dynaminTests = testComponents.Where(t => t.dynamic).ToList();
m_DynamicTestsToRun = dynaminTests.Select(c => c.dynamicTypeName).ToList();
testComponents.RemoveAll(dynaminTests.Contains);
m_TestsToRun = testComponents.Select( tc => tc.gameObject ).ToList();
m_ReadyToRun = true;
TestComponent.DisableAllTests();
EditorApplication.isPlaying = true;
}