public void SeekTest()
        {
            TestAnimation animation = new TestAnimation();

            ((IAnimation)animation).OnStarted();

            animation.Seek(TimeSpan.FromSeconds(4.5f));
            Assert.AreEqual <AnimationState>(AnimationState.Playing, animation.State);
            Assert.AreEqual <TimeSpan>(TimeSpan.FromSeconds(4.5), animation.Position);

            animation.Seek(2);
            Assert.AreEqual <AnimationState>(AnimationState.Playing, animation.State);
            Assert.AreEqual <TimeSpan>(TimeSpan.FromSeconds(2), animation.Position);

            animation.Update(3);
            Assert.AreNotEqual <AnimationState>(AnimationState.Playing, animation.State);

            animation.StartupDirection = AnimationDirection.Backward;
            ((IAnimation)animation).OnStarted();
            animation.Seek(1);
            Assert.AreEqual <AnimationState>(AnimationState.Playing, animation.State);

            animation.Update(1.001f);
            Assert.AreNotEqual <AnimationState>(AnimationState.Playing, animation.State);
        }