diff --git a/Tests/EventBasedCoroutineTests.cs b/Tests/EventBasedCoroutineTests.cs index 456f9c9..f1fbb91 100644 --- a/Tests/EventBasedCoroutineTests.cs +++ b/Tests/EventBasedCoroutineTests.cs @@ -301,5 +301,42 @@ namespace Tests { Assert.AreEqual(cr.Name, "Bird", "Incorrect name of the coroutine."); } + [Test] + public void MovingCoroutineTest() + { + var evt = new Event(); + IEnumerator MovingCoroutine() { + while (true) { + yield return new Wait(evt); + yield return new Wait(0d); + } + } + + CoroutineHandler.Start(MovingCoroutine(), "MovingCoroutine"); + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.RaiseEvent(evt); + + CoroutineHandler.Tick(1d); + CoroutineHandler.Tick(1d); + CoroutineHandler.Tick(1d); + CoroutineHandler.Tick(1d); + + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.Tick(1d); + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.Tick(1d); + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.Tick(1d); + + CoroutineHandler.Tick(1d); + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.Tick(1d); + CoroutineHandler.RaiseEvent(evt); + CoroutineHandler.Tick(1d); + CoroutineHandler.RaiseEvent(evt); + } + } } \ No newline at end of file