using System.Threading.Tasks; using Alphaleonis.Win32.Filesystem; using Xunit; namespace Wabbajack.Common.Test { public class MiscTests { [Fact] public void TestDiskSpeed() { using (var queue = new WorkQueue()) { var speed = Utils.TestDiskSpeed(queue, AbsolutePath.EntryPoint); } } [Fact] public async Task TestHash() { var testFile = ((RelativePath)"text.data").RelativeToEntryPoint(); const string data = "Cheese for Everyone!"; await testFile.WriteAllTextAsync(data); File.WriteAllText("test.data", data); Assert.Equal(Hash.FromBase64("eSIyd+KOG3s="), await testFile.FileHashCachedAsync()); Assert.True(Utils.TryGetHashCache(testFile, out var fileHash)); Assert.Equal(Hash.FromBase64("eSIyd+KOG3s="), fileHash); } [Fact] public void TestHashHex() { var hash = Hash.FromULong((ulong)Utils.NextRandom(0, int.MaxValue)); Assert.Equal(hash, Hash.FromHex(hash.ToHex())); hash = Hash.FromLong(4085310893299329733); Assert.Equal(hash, Hash.FromHex(hash.ToHex())); } } }