public void ChangeAnimation(AnimationClip cip, string stateName="Default") {
		if(animation.GetState(stateName) != null) {
			animation.Stop(stateName);
			animation.RemoveState(stateName);
		}
		animation.AddState(cip, stateName);
		animation.Play(stateName);
	}
        public void GetStates_ModifyStates_IEnumerator_MoveNext_Throws()
        {
            SimpleAnimation animation    = Instantiate();
            var             clip         = Resources.Load <AnimationClip>("LinearX");
            var             clipInstance = Object.Instantiate <AnimationClip>(clip);

            animation.AddClip(clipInstance, "SingleClip");
            IEnumerable <SimpleAnimation.State> states = animation.GetStates();
            var it = states.GetEnumerator();

            animation.RemoveState("SingleClip");
            Assert.Throws <InvalidOperationException>(() => { it.MoveNext(); });
        }