Пример #1
0
        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));
        }
Пример #2
0
        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));
        }