public void ShouldBecomeFinishedWhenAwaitCallbackReturnTrue() { var tween = new TweenAwait(() => true); var result = tween.Advance(new TimeSpan(1)); Assert.True(tween.IsFinished); }
public void ShouldStayUnfinishedWhenAwaitCallbackReturnFalse() { var tween = new TweenAwait(() => false); var result = tween.Advance(new TimeSpan(1)); Assert.False(tween.IsFinished); }
public void ShouldReturnPassedTimeSpanWhenAwaitCallbackReturnsFalse(long ticks) { var tween = new TweenAwait(() => false); var result = tween.Advance(new TimeSpan(ticks)); Assert.Equal(ticks, result.Ticks); }
public void ShouldCallAwaitCallbackOnAdvanceRegardlessOfTimeSpanPassed(long ticks) { var awaitCallCount = 0; var tween = new TweenAwait(() => { awaitCallCount++; return(false); }); tween.Advance(new TimeSpan(ticks)); Assert.Equal(1, awaitCallCount); }
public void ShouldBecomeFinishedAndNotCallAwaitCallback_Finish() { var awaitCallCount = 0; var tween = new TweenAwait(() => { awaitCallCount++; return(true); }); tween.Finish(); Assert.True(tween.IsFinished); Assert.Equal(0, awaitCallCount); }
public void ShouldNotCallAwaitCallbackWhenAlreadyFinished() { var awaitCallCount = 0; var tween = new TweenAwait(() => { awaitCallCount++; return(true); }); tween.Advance(new TimeSpan(1)); tween.Advance(new TimeSpan(1)); tween.Advance(new TimeSpan(1)); tween.Advance(new TimeSpan(1)); Assert.Equal(1, awaitCallCount); }