public static CreateTempFile ( string prefix, string suffix ) : |
||
prefix | string | |
suffix | string | |
return |
public static FileInfo CreateTempFile(string prefix, string suffix)
{
//DirectoryInfo @base = BaseTempDirForTestClass();
int attempt = 0;
FileInfo f;
do
{
if (attempt++ >= TEMP_NAME_RETRY_THRESHOLD)
{
throw new Exception("Failed to get a temporary name too many times, check your temp directory and consider manually cleaning it: " + System.IO.Path.GetTempPath());
}
f = new FileInfo(Path.Combine(System.IO.Path.GetTempPath(), prefix + "-" + string.Format(CultureInfo.InvariantCulture, "%03d", attempt) + suffix));
} while (f.Create() == null);
RegisterToRemoveAfterSuite(f);
return f;
}
LuceneTestCase::CreateTempFile ( ) : |
internal static string MaybeCreateTempFile(bool removeAfterClass = true) { string result = null; Stream temp = null; if (LuceneTestCase.TestLineDocsFile == LuceneTestCase.DEFAULT_LINE_DOCS_FILE) // Always GZipped { temp = typeof(LineFileDocs).FindAndGetManifestResourceStream(LuceneTestCase.TestLineDocsFile); } else if (LuceneTestCase.TestLineDocsFile.EndsWith(".gz", StringComparison.Ordinal)) { temp = new FileStream(LuceneTestCase.TestLineDocsFile, FileMode.Open, FileAccess.Read, FileShare.Read); } if (null != temp) { var file = removeAfterClass ? LuceneTestCase.CreateTempFile(TEMP_FILE_PREFIX, TEMP_FILE_SUFFIX) : FileSupport.CreateTempFile(TEMP_FILE_PREFIX, TEMP_FILE_SUFFIX); result = file.FullName; using (var gzs = new GZipStream(temp, CompressionMode.Decompress, leaveOpen: false)) using (Stream output = new FileStream(result, FileMode.Open, FileAccess.Write, FileShare.Read)) { gzs.CopyTo(output); } } return(result); }