public void Add(int nValues) { var queue = new MultilevelQueue <string>(priorityLevels: nValues, secondsToAgingItems: 1); for (int i = 0; i < nValues; i++) { queue.Add($"Added item {i}", i); } var result = queue.Count; Assert.Equal(nValues, result); }
public void Peek(int nValues) { var result = true; var queue = new MultilevelQueue <int>(priorityLevels: nValues, secondsToAgingItems: 1); for (int i = nValues - 1; i >= 0; i--) { queue.Add(i, i); result &= (i == queue.Peek()); } Assert.True(result); }
public void Remove(int nValues) { var queue = new MultilevelQueue <int>(priorityLevels: nValues, secondsToAgingItems: 1); for (int i = 0; i < nValues; i++) { queue.Add(i, priority: 0); } for (int i = 0; i < nValues; i++) { queue.Remove(); } var result = queue.Count; Assert.Equal(0, result); }