Beispiel #1
0
        public void Enqueue_MaxCapacityReached_TryToEnqueueNewPriority_Failes()
        {
            // Arrange
            TestHelpers.GetItemsWithObjectPriority().ForEach(i => _targetQueue.Enqueue(i));


            var mockWithPriority = new MockWithObjectPriority(new TimeToProcess(1.5M));

            // Act
            var result = _targetQueue.Enqueue(mockWithPriority);

            // Assert
            result.Should().BeFalse();
        }
Beispiel #2
0
        public void Dequeue_QueueContainsItemsWithSamePriority_ReturnsSuccessWithFirstInItem()
        {
            // Arrange
            var mockWithPriority1 = new MockWithObjectPriority(new TimeToProcess(0.5M));
            var mockWithPriority2 = new MockWithObjectPriority(new TimeToProcess(0.5M));

            _targetQueue.Enqueue(mockWithPriority1);
            _targetQueue.Enqueue(mockWithPriority2);

            // Act
            var result1 = _targetQueue.Dequeue();
            var result2 = _targetQueue.Dequeue();

            // Assert
            result1.Should().Be(mockWithPriority1);
            result2.Should().Be(mockWithPriority2);
        }
Beispiel #3
0
        public void GetEnumerator_QueueContainsSamePriorities_EnumerationIsOrderedByFirstIn()
        {
            // Arrange
            var mockWithPriority1 = new MockWithObjectPriority(new TimeToProcess(0.25M));
            var mockWithPriority2 = new MockWithObjectPriority(new TimeToProcess(0.25M));

            _targetQueue.Enqueue(mockWithPriority1);
            _targetQueue.Enqueue(mockWithPriority2);

            // Act
            var enumerator = _targetQueue.GetEnumerator();

            // Assert
            enumerator.MoveNext();
            enumerator.Current.Should().Be(mockWithPriority1);
            enumerator.MoveNext();
            enumerator.Current.Should().Be(mockWithPriority2);
        }