Updating to VS 2026
This commit is contained in:
@@ -8,6 +8,8 @@ namespace AMWD.Common.Tests.Utilities
|
||||
[TestClass]
|
||||
public class AsyncQueueTest
|
||||
{
|
||||
public TestContext TestContext { get; set; }
|
||||
|
||||
private Queue<TestElement> _internalQueue;
|
||||
|
||||
private TestElement _queueElement1;
|
||||
@@ -52,7 +54,7 @@ namespace AMWD.Common.Tests.Utilities
|
||||
queue.Enqueue(element);
|
||||
|
||||
// assert
|
||||
Assert.AreEqual(1, _internalQueue.Count);
|
||||
Assert.HasCount(1, _internalQueue);
|
||||
Assert.AreEqual(_internalQueue.Count, queue.Count);
|
||||
}
|
||||
|
||||
@@ -69,11 +71,11 @@ namespace AMWD.Common.Tests.Utilities
|
||||
// act
|
||||
var task = Task.Run(async () =>
|
||||
{
|
||||
await queue.WaitAsync();
|
||||
await queue.WaitAsync(TestContext.CancellationToken);
|
||||
available = true;
|
||||
});
|
||||
}, TestContext.CancellationToken);
|
||||
queue.Enqueue(element);
|
||||
task.Wait();
|
||||
task.Wait(TestContext.CancellationToken);
|
||||
|
||||
// assert
|
||||
Assert.IsTrue(available);
|
||||
@@ -92,10 +94,10 @@ namespace AMWD.Common.Tests.Utilities
|
||||
// act
|
||||
var task = Task.Run(async () =>
|
||||
{
|
||||
callback = await queue.DequeueAsync();
|
||||
});
|
||||
callback = await queue.DequeueAsync(TestContext.CancellationToken);
|
||||
}, TestContext.CancellationToken);
|
||||
queue.Enqueue(element);
|
||||
task.Wait();
|
||||
task.Wait(TestContext.CancellationToken);
|
||||
|
||||
// assert
|
||||
Assert.IsNotNull(callback);
|
||||
@@ -118,8 +120,8 @@ namespace AMWD.Common.Tests.Utilities
|
||||
queue.Enqueue(elements);
|
||||
|
||||
// assert
|
||||
Assert.AreEqual(2, _internalQueue.Count);
|
||||
Assert.AreEqual(queue.Count, _internalQueue.Count);
|
||||
Assert.HasCount(2, _internalQueue);
|
||||
Assert.HasCount(queue.Count, _internalQueue);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
@@ -229,12 +231,12 @@ namespace AMWD.Common.Tests.Utilities
|
||||
|
||||
var task = Task.Run(async () =>
|
||||
{
|
||||
await Task.Delay(1000);
|
||||
queue.Enqueue(new[] { _queueElement1, _queueElement2, _queueElement3 });
|
||||
});
|
||||
await Task.Delay(1000, TestContext.CancellationToken);
|
||||
queue.Enqueue([_queueElement1, _queueElement2, _queueElement3]);
|
||||
}, TestContext.CancellationToken);
|
||||
|
||||
// act
|
||||
var item = await queue.DequeueAsync();
|
||||
var item = await queue.DequeueAsync(TestContext.CancellationToken);
|
||||
|
||||
// assert
|
||||
Assert.AreEqual(2, queue.Count);
|
||||
@@ -251,17 +253,17 @@ namespace AMWD.Common.Tests.Utilities
|
||||
|
||||
var task = Task.Run(async () =>
|
||||
{
|
||||
await Task.Delay(1000);
|
||||
queue.Enqueue(new[] { _queueElement1, _queueElement2, _queueElement3 });
|
||||
});
|
||||
await Task.Delay(1000, TestContext.CancellationToken);
|
||||
queue.Enqueue([_queueElement1, _queueElement2, _queueElement3]);
|
||||
}, TestContext.CancellationToken);
|
||||
|
||||
// act
|
||||
var items = await queue.DequeueManyAsync(2);
|
||||
var items = await queue.DequeueManyAsync(2, TestContext.CancellationToken);
|
||||
|
||||
// assert
|
||||
Assert.AreEqual(1, queue.Count);
|
||||
Assert.IsNotNull(items);
|
||||
Assert.AreEqual(2, items.Length);
|
||||
Assert.HasCount(2, items);
|
||||
Assert.AreEqual(_queueElement1, items[0]);
|
||||
Assert.AreEqual(_queueElement2, items[1]);
|
||||
}
|
||||
@@ -275,17 +277,17 @@ namespace AMWD.Common.Tests.Utilities
|
||||
|
||||
var task = Task.Run(async () =>
|
||||
{
|
||||
await Task.Delay(1000);
|
||||
queue.Enqueue(new[] { _queueElement1, _queueElement2, _queueElement3 });
|
||||
});
|
||||
await Task.Delay(1000, TestContext.CancellationToken);
|
||||
queue.Enqueue([_queueElement1, _queueElement2, _queueElement3]);
|
||||
}, TestContext.CancellationToken);
|
||||
|
||||
// act
|
||||
var items = await queue.DequeueAvailableAsync();
|
||||
var items = await queue.DequeueAvailableAsync(cancellationToken: TestContext.CancellationToken);
|
||||
|
||||
// assert
|
||||
Assert.AreEqual(0, queue.Count);
|
||||
Assert.IsNotNull(items);
|
||||
Assert.AreEqual(3, items.Length);
|
||||
Assert.HasCount(3, items);
|
||||
Assert.AreEqual(_queueElement1, items[0]);
|
||||
Assert.AreEqual(_queueElement2, items[1]);
|
||||
Assert.AreEqual(_queueElement3, items[2]);
|
||||
@@ -300,34 +302,30 @@ namespace AMWD.Common.Tests.Utilities
|
||||
|
||||
var task = Task.Run(async () =>
|
||||
{
|
||||
await Task.Delay(1000);
|
||||
queue.Enqueue(new[] { _queueElement1, _queueElement2, _queueElement3 });
|
||||
});
|
||||
await Task.Delay(1000, TestContext.CancellationToken);
|
||||
queue.Enqueue([_queueElement1, _queueElement2, _queueElement3]);
|
||||
}, TestContext.CancellationToken);
|
||||
|
||||
// act
|
||||
var items = await queue.DequeueAvailableAsync(2);
|
||||
var items = await queue.DequeueAvailableAsync(2, TestContext.CancellationToken);
|
||||
|
||||
// assert
|
||||
Assert.AreEqual(1, queue.Count);
|
||||
Assert.IsNotNull(items);
|
||||
Assert.AreEqual(2, items.Length);
|
||||
Assert.HasCount(2, items);
|
||||
Assert.AreEqual(_queueElement1, items[0]);
|
||||
Assert.AreEqual(_queueElement2, items[1]);
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
[ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
public async Task ShouldThrowArumentOutOfRangeException()
|
||||
{
|
||||
// arrange
|
||||
_internalQueue.Clear();
|
||||
var queue = GetQueue();
|
||||
|
||||
// act
|
||||
await queue.DequeueManyAsync(-2);
|
||||
|
||||
// assert - ArgumentOutOfRangeException expected
|
||||
Assert.Fail();
|
||||
// act & assert
|
||||
await Assert.ThrowsExactlyAsync<ArgumentOutOfRangeException>(() => queue.DequeueManyAsync(-2, TestContext.CancellationToken));
|
||||
}
|
||||
|
||||
private AsyncQueue<TestElement> GetQueue()
|
||||
|
||||
Reference in New Issue
Block a user