Skip to content

Commit

Permalink
Finish [SuppressTempFileChecks] attribute functionality, #898 (#1084)
Browse files Browse the repository at this point in the history
* Finish [SuppressTempFileChecks] attribute functionality, #898

* PR feedback

* Lucene.Net.Util.LuceneTestCase: Removed setting SuiteFailureMarker to false, which will cause all additional tests keep temporary files on disk

---------

Co-authored-by: Shad Storhaug <[email protected]>
  • Loading branch information
paulirwin and NightOwl888 authored Jan 8, 2025
1 parent a9f7d30 commit c3b6896
Showing 1 changed file with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
Original file line number Diff line number Diff line change
Expand Up @@ -440,7 +440,6 @@ public SuppressCodecsAttribute(params string[] value)
public string[] Value { get; private set; }
}

// LUCENENET TODO: Finish implementation
/// <summary>
/// Marks any suites which are known not to close all the temporary
/// files. This may prevent temp files and folders from being cleaned
Expand Down Expand Up @@ -743,11 +742,11 @@ private static IList<string> LoadCoreDirectories()
/// </summary>
internal static TestRuleSetupAndRestoreClassEnv ClassEnvRule { get; } = new TestRuleSetupAndRestoreClassEnv();

// LUCENENET TODO
// LUCENENET TODO: Implement these rules
/// <summary>
/// Suite failure marker (any error in the test or suite scope).
/// </summary>
public static readonly /*TestRuleMarkFailure*/ bool SuiteFailureMarker = true; // Means: was successful
public static /*TestRuleMarkFailure*/ bool SuiteFailureMarker = true; // Means: was successful

///// <summary>
///// Ignore tests after hitting a designated number of initial failures. This
Expand Down Expand Up @@ -3091,9 +3090,10 @@ private static void RegisterToRemoveAfterSuite(FileSystemInfo f)
[MethodImpl(MethodImplOptions.NoInlining)]
protected string GetFullMethodName([CallerMemberName] string memberName = "")
{
return string.Format("{0}+{1}", this.GetType().Name, memberName);
return $"{this.GetType().Name}+{memberName}";
}

// LUCENENET specific - this is equivalent to TemporaryFilesCleanupRule in Lucene
private static void CleanupTemporaryFiles()
{
// Drain cleanup queue and clear it.
Expand Down Expand Up @@ -3131,19 +3131,19 @@ private static void CleanupTemporaryFiles()
}
catch (Exception e) when (e.IsIOException())
{
// Type suiteClass = RandomizedContext.Current.GetTargetType;
// if (suiteClass.IsAnnotationPresent(typeof(SuppressTempFileChecks)))
// {
Console.Error.WriteLine("WARNING: Leftover undeleted temporary files " + e.Message);
return;
// }
if (RandomizedContext.CurrentContext.CurrentTest.TypeInfo?.Type.GetCustomAttribute<SuppressTempFileChecksAttribute>(inherit: true) is { } suppressAttr)
{
Console.Error.WriteLine($"WARNING: Leftover undeleted temporary files (bugUrl: {suppressAttr.BugUrl}): {e.Message}");
return;
}
throw;
}
}
else
{
if (tempDirBasePath != null)
{
Console.Error.WriteLine("NOTE: leaving temporary files on disk at: " + tempDirBasePath);
Console.Error.WriteLine($"NOTE: leaving temporary files on disk at: {tempDirBasePath}");
}
}
}
Expand Down

0 comments on commit c3b6896

Please sign in to comment.