2026-04-17 15:03:22 +10:00
|
|
|
|
using LogosStorageClient;
|
|
|
|
|
|
using LogosStorageTests;
|
2024-11-21 10:46:11 +01:00
|
|
|
|
using NUnit.Framework;
|
|
|
|
|
|
|
2026-04-17 15:03:22 +10:00
|
|
|
|
namespace LogosStorageReleaseTests.DataTests
|
2024-11-21 10:46:11 +01:00
|
|
|
|
{
|
|
|
|
|
|
[TestFixture]
|
2026-04-17 15:03:22 +10:00
|
|
|
|
public class UnknownCidTest : LogosStorageDistTest
|
2024-11-21 10:46:11 +01:00
|
|
|
|
{
|
|
|
|
|
|
[Test]
|
|
|
|
|
|
public void DownloadingUnknownCidDoesNotCauseCrash()
|
|
|
|
|
|
{
|
2026-04-17 15:03:22 +10:00
|
|
|
|
var node = StartLogosStorage();
|
2024-11-21 10:46:11 +01:00
|
|
|
|
|
|
|
|
|
|
var unknownCid = new ContentId("zDvZRwzkzHsok3Z8yMoiXE9EDBFwgr8WygB8s4ddcLzzSwwXAxLZ");
|
|
|
|
|
|
|
|
|
|
|
|
var localFiles = node.LocalFiles().Content;
|
|
|
|
|
|
CollectionAssert.DoesNotContain(localFiles.Select(f => f.Cid), unknownCid);
|
|
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
|
{
|
2025-07-09 16:00:40 +02:00
|
|
|
|
node.DownloadContent(unknownCid, TimeSpan.FromMinutes(2.0));
|
2024-11-21 10:46:11 +01:00
|
|
|
|
}
|
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
|
{
|
2024-11-21 12:15:15 +01:00
|
|
|
|
var expectedMessage = $"Download of '{unknownCid.Id}' timed out";
|
|
|
|
|
|
if (!ex.Message.StartsWith(expectedMessage)) throw;
|
2024-11-21 10:46:11 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
WaitAndCheckNodesStaysAlive(TimeSpan.FromMinutes(2), node);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|