提交 bea81154 编写于 作者: J Jared Parsons

Factored out some common data

上级 96f2f926
......@@ -76,7 +76,8 @@ private TestResult Migrate(string assemblyPath, CachedTestResult cachedTestResul
commandLine: commandLine,
elapsed: TimeSpan.FromMilliseconds(0),
standardOutput: cachedTestResult.StandardOutput,
errorOutput: cachedTestResult.ErrorOutput);
errorOutput: cachedTestResult.ErrorOutput,
isResultFromCache: true);
}
private async Task CacheTestResult(ContentFile contentFile, TestResult testResult)
......
......@@ -20,9 +20,8 @@ internal sealed class WebDataStorage : IDataStorage
private const string NameResultsFileName = "ResultsFileName";
private const string NameResultsFileContent = "ResultsFileContent";
private const string NameEllapsedSeconds = "EllapsedSeconds";
private const string DashboardUriString = "http://jdash.azurewebsites.net";
private readonly RestClient _restClient = new RestClient(DashboardUriString);
private readonly RestClient _restClient = new RestClient(Constants.DashboardUriString);
public async Task AddCachedTestResult(ContentFile contentFile, CachedTestResult testResult)
{
......
......@@ -10,6 +10,10 @@ namespace RunTests
{
internal static class Constants
{
internal const string ResultsDirectoryName = "xUnitResults";
internal static string ResultsDirectoryName => "xUnitResults";
internal static bool IsJenkinsRun => !string.IsNullOrEmpty(Environment.GetEnvironmentVariable("JENKINS_URL"));
internal static string DashboardUriString => "http://jdash.azurewebsites.net";
}
}
......@@ -16,6 +16,7 @@ internal struct TestResult
internal TimeSpan Elapsed { get; }
internal string StandardOutput { get; }
internal string ErrorOutput { get; }
internal bool IsResultFromCache { get; }
/// <summary>
/// Path to the results file. Can be null in the case xunit error'd and did not create one.
......@@ -25,7 +26,7 @@ internal struct TestResult
internal string ResultDir { get; }
internal bool Succeeded => ExitCode == 0;
internal TestResult(int exitCode, string assemblyPath, string resultDir, string resultsFilePath, string commandLine, TimeSpan elapsed, string standardOutput, string errorOutput)
internal TestResult(int exitCode, string assemblyPath, string resultDir, string resultsFilePath, string commandLine, TimeSpan elapsed, string standardOutput, string errorOutput, bool isResultFromCache)
{
ExitCode = exitCode;
AssemblyName = Path.GetFileName(assemblyPath);
......@@ -36,6 +37,7 @@ internal TestResult(int exitCode, string assemblyPath, string resultDir, string
Elapsed = elapsed;
StandardOutput = standardOutput;
ErrorOutput = errorOutput;
IsResultFromCache = isResultFromCache;
}
}
......
......@@ -125,7 +125,8 @@ public async Task<TestResult> RunTestAsync(string assemblyPath, CancellationToke
commandLine: commandLine,
elapsed: span,
standardOutput: standardOutput,
errorOutput: errorOutput);
errorOutput: errorOutput,
isResultFromCache: false);
}
catch (Exception ex)
{
......
......@@ -37,8 +37,7 @@ internal static int Main(string[] args)
// 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 (StringComparer.OrdinalIgnoreCase.Equals("REDMOND", Environment.UserDomainName) ||
!string.IsNullOrEmpty(Environment.GetEnvironmentVariable("JENKINS_URL")))
if (StringComparer.OrdinalIgnoreCase.Equals("REDMOND", Environment.UserDomainName) || Constants.IsJenkinsRun)
{
Console.WriteLine("Using web cache");
dataStorage = new WebDataStorage();
......
......@@ -50,4 +50,4 @@
<ImportGroup Label="Targets">
<Import Project="..\..\..\..\build\Targets\VSL.Imports.targets" />
</ImportGroup>
</Project>
</Project>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册