in e2etest/GuestProxyAgentTest/Extensions/ModelExtensions.cs [27:78]
public static TestCaseResultDetails DownloadContentIfFromBlob(this TestCaseResultDetails testCaseResultDetails, Action<string> logger = null!)
{
if(!testCaseResultDetails.FromBlob)
{
return testCaseResultDetails;
}
testCaseResultDetails.FromBlob = false;
var downloadSucceed = true;
if (!string.IsNullOrEmpty(testCaseResultDetails.StdOut))
{
var stdOutDownload = TestCommonUtilities.DownloadContentAsString(testCaseResultDetails.StdOut, logger);
testCaseResultDetails.StdOut = stdOutDownload.Item2;
if(!stdOutDownload.Item1)
{
downloadSucceed = false;
}
}
if (!string.IsNullOrEmpty(testCaseResultDetails.StdErr))
{
var stdErrDownload = TestCommonUtilities.DownloadContentAsString(testCaseResultDetails.StdErr, logger);
testCaseResultDetails.StdErr = stdErrDownload.Item2;
if(!stdErrDownload.Item1)
{
downloadSucceed = false;
}
}
if (!string.IsNullOrEmpty(testCaseResultDetails.CustomOut))
{
var custOutDownload = TestCommonUtilities.DownloadContentAsString(testCaseResultDetails.CustomOut, logger);
testCaseResultDetails.CustomOut = custOutDownload.Item2;
if(!custOutDownload.Item1)
{
downloadSucceed = false;
}
}
if (!downloadSucceed)
{
// in case of any download failed, mark the test result as failed and set the std error as combined string from all the download result
testCaseResultDetails.Succeed = false;
testCaseResultDetails.StdErr = string.Format("Download content from blob failed: \n stdOut: {0}\n stdError: {1}\n customOut: {2}"
, testCaseResultDetails.StdOut
, testCaseResultDetails.StdErr
, testCaseResultDetails.CustomOut);
}
return testCaseResultDetails;
}