public void TestBasicCurveIsEqual([Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode preMode, [Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode postMode) { curveRef = new AnimationCurve(new Keyframe(0, 0), new Keyframe(1, 1)); curveRef.preWrapMode = preMode; curveRef.postWrapMode = postMode; curveNat = new NativeCurve(curveRef); AssertCurvesEqual(); }
public void TestInfiniteTangentCurvesAreEqual([Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode preMode, [Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode postMode) { curveRef = new AnimationCurve(new Keyframe(0, 0), new Keyframe(0.5f, 0.2f), new Keyframe(0.5f, 0.8f), new Keyframe(1, 1)); curveRef.preWrapMode = preMode; curveRef.postWrapMode = postMode; curveNat = new NativeCurve(curveRef); AssertCurvesEqual(); }
public void TestCanDeallocateOnJobCompletion([Values(Allocator.Persistent, Allocator.TempJob)] Allocator allocator) { curveRef = new AnimationCurve(new Keyframe(0, 0), new Keyframe(1, 1)); var toTest = new NativeCurve(curveRef, allocator); var job = new JobThatDeallocates() { Curve = toTest }.Schedule(); job.Complete(); //We expect that trying to dispose again throws an exception Assert.That(() => toTest.Dispose(), Throws.InvalidOperationException); }
public void TestUnlinkedTangentCurvesAreEqual([Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode preMode, [Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode postMode) { Keyframe[] keyframes = new Keyframe[10]; for (int i = 0; i < keyframes.Length; i++) { keyframes[i] = new Keyframe(i, Random.value, Random.Range(-10, 10), Random.Range(-10, 10)); } curveRef = new AnimationCurve(keyframes); curveRef.preWrapMode = preMode; curveRef.postWrapMode = postMode; curveNat = new NativeCurve(curveRef); AssertCurvesEqual(); }
public void TestMultiCurveIsEqual([Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode preMode, [Values(WrapMode.Clamp, WrapMode.Loop, WrapMode.PingPong)] WrapMode postMode) { Keyframe[] keyframes = new Keyframe[10]; for (int i = 0; i < keyframes.Length; i++) { keyframes[i] = new Keyframe(i / 10.0f, Random.value); } curveRef = new AnimationCurve(keyframes); curveRef.preWrapMode = preMode; curveRef.postWrapMode = postMode; curveNat = new NativeCurve(curveRef); AssertCurvesEqual(); }