Example #1
0
            public void first_task_starts_on_second_stage_on_first_stage_completion()
            {
                _q.Process();
                _q.Process();

                _t1.Complete();

                _q.Process();

                Assert.That(_t1.StartedOn(1));
            }
Example #2
0
 public void first_task_keeps_other_blocked_at_stage_two()
 {
     _t1.Complete();
     _q.Process(max: 2);
     _q.Process(max: 2);
     _t2.Complete();
     _t3.Complete();
     _q.Process();
     Assert.That(!_t2.StartedOn(2));
     Assert.That(!_t3.StartedOn(2));
 }
Example #3
0
            public void second_task_does_not_start_on_second_stage_on_first_stage_completion()
            {
                _q.Process();
                _q.Process();

                _t2.Complete();

                _q.Process();
                _q.Process();

                Assert.That(!_t2.StartedOn(1));
            }
            public void first_task_keeps_other_blocked_at_stage_two()
            {
                _t1.Complete();
                var processed4 = _q.Process();
                var processed5 = _q.Process();

                _t2.Complete();
                _t3.Complete();
                var processed7 = _q.Process();

                Assert.AreEqual(1, _processed1);
                Assert.AreEqual(2, _processed2);
                Assert.AreEqual(2, _processed3);
                Assert.AreEqual(1, processed4);
                Assert.AreEqual(0, processed5);
                Assert.AreEqual(0, processed7);
            }
Example #5
0
            public void first_task_completed_unblocks_both_tasks()
            {
                _t1.Complete();
                _q.Process();
                _q.Process();

                Assert.That(_t1.StartedOn(1));
                Assert.That(_t2.StartedOn(1));
            }
            public void first_task_completed_unblocks_both_tasks()
            {
                _t1.Complete();
                var processed4 = _q.Process();
                var processed5 = _q.Process();

                Assert.AreEqual(1, _processed1);
                Assert.AreEqual(2, _processed2);
                Assert.AreEqual(0, _processed3);
                Assert.AreEqual(1, processed4);
                Assert.AreEqual(0, processed5);
            }
Example #7
0
 public void first_task_starts_on_second_stage_on_first_stage_completion()
 {
     _q.Process();
     _t1.Complete();
 }
 public void first_task_starts_on_second_stage_on_first_stage_completion()
 {
     _q.Process();
     Assert.Throws <InvalidOperationException>(() => { _t1.Complete(); });
 }