modular-avatar/UnitTests~/SimpleArmatureToggle/SimpleArmatureToggle.cs

36 lines
1.2 KiB
C#
Raw Permalink Normal View History

#if MA_VRCSDK3_AVATARS
using nadena.dev.modular_avatar.core;
using nadena.dev.modular_avatar.core.editor;
using NUnit.Framework;
using UnityEditor;
using UnityEngine;
namespace modular_avatar_tests.SimpleArmatureToggle
{
public class SimpleArmatureToggle : TestBase
{
[Test]
public void ToplevelAssetTogglingWorks()
{
var prefab = CreatePrefab("SimpleArmatureToggle.prefab");
AvatarProcessor.ProcessAvatar(prefab);
var layerName = "merged";
var motion = findFxClip(prefab, layerName);
var obj1 = prefab.transform.Find("Armature/Hips").GetChild(1);
var obj2 = prefab.transform.Find("Armature/Hips/Chest").GetChild(0);
var binding1 = EditorCurveBinding.FloatCurve(RuntimeUtil.AvatarRootPath(obj1.gameObject),
typeof(GameObject), "m_IsActive");
var binding2 = EditorCurveBinding.FloatCurve(RuntimeUtil.AvatarRootPath(obj2.gameObject),
typeof(GameObject), "m_IsActive");
Assert.NotNull(AnimationUtility.GetEditorCurve(motion, binding1));
Assert.NotNull(AnimationUtility.GetEditorCurve(motion, binding2));
}
}
}
#endif