using System; using System.Threading.Tasks; using Wabbajack.BuildServer.Test; using Wabbajack.Common; using Wabbajack.Lib; using Wabbajack.Lib.Downloaders; using Wabbajack.Server.DataLayer; using Xunit; using Xunit.Abstractions; namespace Wabbajack.Server.Test { public class ModFileTests : ABuildServerSystemTest { public ModFileTests(ITestOutputHelper output, SingletonAdaptor fixture) : base(output, fixture) { } [Fact] public async Task CanGetDownloadStates() { var sql = Fixture.GetService(); var archive = new Archive(new WabbajackCDNDownloader.State(new Uri( "https://wabbajack.b-cdn.net/WABBAJACK_TEST_FILE.zip_a1a3e961-5c0b-4ccf-84b4-7aa437d9640d"))) { Size = 20, Hash = Hash.FromBase64("eSIyd+KOG3s=") }; await sql.EnqueueDownload(archive); var dld = await sql.GetNextPendingDownload(); await dld.Finish(sql); var state = await ClientAPI.InferDownloadState(archive.Hash); Assert.Equal(archive.State.GetMetaIniString(), state!.GetMetaIniString()); } } }