public static KeyValuePair <UnitTestRunProperties, UnitTestRun> GetOrCreateSilverlightRun(this IUnitTestLaunch launch, PlatformID silverlightPlatform, UnitTestProviders providers, ITaskRunnerHostController hostController) { var runs = launch.GetRuns(); var silverlightRun = runs.Values.FirstOrDefault(run => run.Value.GetSilverlightPlatformVersion() == silverlightPlatform.Version); if (silverlightRun.Value == null) { var runtimeEnvironment = new RuntimeEnvironment { PlatformType = PlatformType.x86, PlatformVersion = PlatformVersion.v4_0 }; var run = new UnitTestRun((UnitTestLaunch)launch, runtimeEnvironment); var runStrategy = new OutOfProcessUnitTestRunStrategy(SilverlightUnitTestProvider.GetTaskRunnerInfo(launch)); var unitTestProvider = providers.GetProvider(SilverlightUnitTestProvider.RunnerId); var runProperties = new UnitTestRunProperties(unitTestProvider, null, runStrategy, runtimeEnvironment); runProperties.RunController = hostController; silverlightRun = new KeyValuePair <UnitTestRunProperties, UnitTestRun>(runProperties, run); runs.Add(run.ID, silverlightRun); } return(silverlightRun); }
public static KeyValuePair<UnitTestRunProperties, UnitTestRun> GetOrCreateSilverlightRun(this IUnitTestLaunch launch, PlatformID silverlightPlatform, IUnitTestProvider provider, ITaskRunnerHostController hostController) { var runs = launch.GetRuns(); var silverlightRun = runs.Values.FirstOrDefault(run => run.Value.GetSilverlightPlatformVersion() == silverlightPlatform.Version); if (silverlightRun.Value == null) { var runtimeEnvironment = new RuntimeEnvironment { PlatformType = PlatformType.x86, PlatformVersion = PlatformVersion.v4_0 }; var run = new UnitTestRun((UnitTestLaunch)launch, runtimeEnvironment); var runStrategy = new OutOfProcessUnitTestRunStrategy(SilverlightUnitTestProvider.GetTaskRunnerInfo(launch)); var runProperties = new UnitTestRunProperties(provider, null, runStrategy, runtimeEnvironment); runProperties.RunController = hostController; silverlightRun = new KeyValuePair<UnitTestRunProperties, UnitTestRun>(runProperties, run); runs.Add(run.ID, silverlightRun); } return silverlightRun; }