1
0
mirror of https://github.com/bitwarden/server.git synced 2024-11-22 12:15:36 +01:00
bitwarden-server/test/Core.Test/TempDirectory.cs

43 lines
918 B
C#
Raw Normal View History

using System;
using System.IO;
namespace Bit.Core.Test
{
public class TempDirectory : IDisposable
{
public string Directory { get; private set; }
public TempDirectory()
{
Directory = Path.Combine(Path.GetTempPath(), $"bitwarden_{Guid.NewGuid().ToString().Replace("-", "")}");
}
public override string ToString() => Directory;
#region IDisposable implementation
~TempDirectory()
{
Dispose(false);
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
public void Dispose(bool disposing)
{
if (disposing)
{
try
{
System.IO.Directory.Delete(Directory, true);
}
catch { }
}
}
# endregion
}
}