internal void ExistsImpl(RARSimulationMode rarSimulationMode = RARSimulationMode.LoadAndBuildProject) { // This WriteLine is a hack. On a slow machine, the Tasks unittest fails because remoting // times out the object used for remoting console writes. Adding a write in the middle of // keeps remoting from timing out the object. Console.WriteLine("Performing VersioningAndUnification.AutoUnify.StronglyNamedDependency.Exists() test"); // Create the engine. MockEngine engine = new MockEngine(_output); ITaskItem[] assemblyNames = new TaskItem[] { new TaskItem("DependsOnUnified, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"), new TaskItem("DependsOnUnified, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089") }; // Now, pass feed resolved primary references into ResolveAssemblyReference. ResolveAssemblyReference t = new ResolveAssemblyReference(); t.BuildEngine = engine; t.Assemblies = assemblyNames; t.SearchPaths = DefaultPaths; t.AutoUnify = true; bool succeeded = Execute(t, rarSimulationMode); if (rarSimulationMode.HasFlag(RARSimulationMode.LoadAndBuildProject)) { Assert.True(succeeded); t.ResolvedDependencyFiles[0].GetMetadata("FusionName").ShouldBe("UnifyMe, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089", StringCompareShould.IgnoreCase); t.ResolvedDependencyFiles[0].ItemSpec.ShouldBe(s_unifyMeDll_V20Path, StringCompareShould.IgnoreCase); engine.AssertLogContains ( String.Format(AssemblyResources.GetString("ResolveAssemblyReference.UnifiedDependency"), "UniFYme, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089") ); engine.AssertLogContains ( String.Format(AssemblyResources.GetString("ResolveAssemblyReference.UnificationByAutoUnify"), "1.0.0.0", Path.Combine(s_myApp_V10Path, "DependsOnUnified.dll")) ); } }
public void AutoUnifyUsesMinimumIO(RARSimulationMode rarSimulationMode, int ioThreshold) { // This WriteLine is a hack. On a slow machine, the Tasks unittest fails because remoting // times out the object used for remoting console writes. Adding a write in the middle of // keeps remoting from timing out the object. Console.WriteLine("Performing Perf.AutoUnifyUsesMinimumIO() test"); StronglyNamedDependencyAutoUnify t = new StronglyNamedDependencyAutoUnify(_output); try { // Manually instantiate a test fixture and run it. t.StartIOMonitoring(); t.ExistsImpl(rarSimulationMode); } finally { t.StopIOMonitoringAndAssert_Minimal_IOUse(ioThreshold); } }