mirror of
https://github.com/ICDSystems/ICD.Common.Utils.git
synced 2026-01-11 19:44:55 +00:00
test: Fixed ScrollQueueTest after fixing deadlock bug
This commit is contained in:
committed by
Chris Cameron
parent
aeba163a0f
commit
76591155d3
@@ -2,7 +2,6 @@
|
|||||||
using ICD.Common.Properties;
|
using ICD.Common.Properties;
|
||||||
using NUnit.Framework;
|
using NUnit.Framework;
|
||||||
using ICD.Common.Utils.Collections;
|
using ICD.Common.Utils.Collections;
|
||||||
using ICD.Common.Utils.EventArguments;
|
|
||||||
|
|
||||||
namespace ICD.Common.Utils.Tests.Collections
|
namespace ICD.Common.Utils.Tests.Collections
|
||||||
{
|
{
|
||||||
@@ -12,12 +11,14 @@ namespace ICD.Common.Utils.Tests.Collections
|
|||||||
[Test, UsedImplicitly]
|
[Test, UsedImplicitly]
|
||||||
public void MaxSizeTest()
|
public void MaxSizeTest()
|
||||||
{
|
{
|
||||||
|
int unused;
|
||||||
|
|
||||||
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
||||||
test.Enqueue(0);
|
test.Enqueue(0, out unused);
|
||||||
test.Enqueue(1);
|
test.Enqueue(1, out unused);
|
||||||
test.Enqueue(2);
|
test.Enqueue(2, out unused);
|
||||||
test.Enqueue(3);
|
test.Enqueue(3, out unused);
|
||||||
test.Enqueue(4);
|
test.Enqueue(4, out unused);
|
||||||
|
|
||||||
Assert.AreEqual(5, test.Count);
|
Assert.AreEqual(5, test.Count);
|
||||||
|
|
||||||
@@ -26,7 +27,7 @@ namespace ICD.Common.Utils.Tests.Collections
|
|||||||
Assert.AreEqual(3, test.Count);
|
Assert.AreEqual(3, test.Count);
|
||||||
Assert.AreEqual(2, test.Peek());
|
Assert.AreEqual(2, test.Peek());
|
||||||
|
|
||||||
test.Enqueue(0);
|
test.Enqueue(0, out unused);
|
||||||
|
|
||||||
Assert.AreEqual(3, test.Count);
|
Assert.AreEqual(3, test.Count);
|
||||||
Assert.AreEqual(3, test.Peek());
|
Assert.AreEqual(3, test.Peek());
|
||||||
@@ -35,8 +36,10 @@ namespace ICD.Common.Utils.Tests.Collections
|
|||||||
[Test, UsedImplicitly]
|
[Test, UsedImplicitly]
|
||||||
public void ClearTest()
|
public void ClearTest()
|
||||||
{
|
{
|
||||||
|
int unused;
|
||||||
|
|
||||||
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
||||||
test.Enqueue(0);
|
test.Enqueue(0, out unused);
|
||||||
test.Clear();
|
test.Clear();
|
||||||
|
|
||||||
Assert.AreEqual(0, test.Count);
|
Assert.AreEqual(0, test.Count);
|
||||||
@@ -45,9 +48,11 @@ namespace ICD.Common.Utils.Tests.Collections
|
|||||||
[Test, UsedImplicitly]
|
[Test, UsedImplicitly]
|
||||||
public void EnqueueTest()
|
public void EnqueueTest()
|
||||||
{
|
{
|
||||||
|
int unused;
|
||||||
|
|
||||||
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
||||||
test.Enqueue(0);
|
test.Enqueue(0, out unused);
|
||||||
test.Enqueue(1);
|
test.Enqueue(1, out unused);
|
||||||
|
|
||||||
Assert.AreEqual(2, test.Count);
|
Assert.AreEqual(2, test.Count);
|
||||||
|
|
||||||
@@ -60,9 +65,11 @@ namespace ICD.Common.Utils.Tests.Collections
|
|||||||
[Test, UsedImplicitly]
|
[Test, UsedImplicitly]
|
||||||
public void DequeueTest()
|
public void DequeueTest()
|
||||||
{
|
{
|
||||||
|
int unused;
|
||||||
|
|
||||||
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
||||||
test.Enqueue(0);
|
test.Enqueue(0, out unused);
|
||||||
test.Enqueue(1);
|
test.Enqueue(1, out unused);
|
||||||
|
|
||||||
Assert.AreEqual(0, test.Dequeue());
|
Assert.AreEqual(0, test.Dequeue());
|
||||||
Assert.AreEqual(1, test.Count);
|
Assert.AreEqual(1, test.Count);
|
||||||
@@ -71,49 +78,13 @@ namespace ICD.Common.Utils.Tests.Collections
|
|||||||
[Test, UsedImplicitly]
|
[Test, UsedImplicitly]
|
||||||
public void PeekTest()
|
public void PeekTest()
|
||||||
{
|
{
|
||||||
|
int unused;
|
||||||
|
|
||||||
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
ScrollQueue<int> test = new ScrollQueue<int>(5);
|
||||||
test.Enqueue(0);
|
test.Enqueue(0, out unused);
|
||||||
test.Enqueue(1);
|
test.Enqueue(1, out unused);
|
||||||
|
|
||||||
Assert.AreEqual(0, test.Peek());
|
Assert.AreEqual(0, test.Peek());
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test, UsedImplicitly]
|
|
||||||
public void OnItemTrimmedTest()
|
|
||||||
{
|
|
||||||
ScrollQueue<int> test = new ScrollQueue<int>(3);
|
|
||||||
|
|
||||||
int? removedItem = null;
|
|
||||||
|
|
||||||
test.OnItemTrimmed += (sender, args) => removedItem = args.Data;
|
|
||||||
|
|
||||||
test.Enqueue(1);
|
|
||||||
test.Enqueue(2);
|
|
||||||
test.Enqueue(3);
|
|
||||||
|
|
||||||
Assert.IsNull(removedItem, "Raised Early");
|
|
||||||
|
|
||||||
test.Enqueue(4);
|
|
||||||
|
|
||||||
Assert.True(removedItem.HasValue, "Not Raised");
|
|
||||||
if (removedItem.HasValue)
|
|
||||||
Assert.AreEqual(1, removedItem.Value, "Incorrect Value");
|
|
||||||
|
|
||||||
removedItem = null;
|
|
||||||
|
|
||||||
test.Enqueue(5);
|
|
||||||
|
|
||||||
Assert.True(removedItem.HasValue, "Not Raised");
|
|
||||||
if (removedItem.HasValue)
|
|
||||||
Assert.AreEqual(2, removedItem.Value, "Incorrect Value");
|
|
||||||
|
|
||||||
removedItem = null;
|
|
||||||
|
|
||||||
test.MaxSize = 4;
|
|
||||||
|
|
||||||
test.Enqueue(6);
|
|
||||||
|
|
||||||
Assert.False(removedItem.HasValue, "Raised Early");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user