private static ITestExecutor CreateTestExecutor(Options options) { var testExecutionOptions = new TestExecutionOptions( xunitPath: options.XunitPath, procDumpInfo: options.UseProcDump ? GetProcDumpInfo(options) : null, outputDirectory: options.TestResultXmlOutputDirectory, trait: options.Trait, noTrait: options.NoTrait, useHtml: options.UseHtml, test64: options.Test64, testVsi: options.TestVsi); var processTestExecutor = new ProcessTestExecutor(testExecutionOptions); if (!options.UseCachedResults) { return(processTestExecutor); } // The web caching layer is still being worked on. For now want to limit it to Roslyn developers // and Jenkins runs by default until we work on this a bit more. Anyone reading this who wants // to try it out should feel free to opt into this. IDataStorage dataStorage = new LocalDataStorage(); if (CanUseWebStorage()) { dataStorage = new WebDataStorage(); } return(new CachingTestExecutor(processTestExecutor, dataStorage)); }
private static ITestExecutor CreateTestExecutor(Options options) { var processTestExecutor = new ProcessTestExecutor(options); if (!options.UseCachedResults) { return(processTestExecutor); } // The web caching layer is still being worked on. For now want to limit it to Roslyn developers // and Jenkins runs by default until we work on this a bit more. Anyone reading this who wants // to try it out should feel free to opt into this. IDataStorage dataStorage = new LocalDataStorage(); if (CanUseWebStorage()) { dataStorage = new WebDataStorage(); } return(new CachingTestExecutor(options, processTestExecutor, dataStorage)); }