public void SimpleObject()
        {
            var so   = new SerializedObject(ScriptableObject.CreateInstance <SimpleObjectFixture>());
            var prop = so.FindProperty(nameof(SimpleObjectFixture.value));
            var type = SerializedObjectUtils.FindPropertyType(so, prop.propertyPath);

            Assert.AreEqual(typeof(string), type);
        }
        public void ListObject()
        {
            var so   = new SerializedObject(ScriptableObject.CreateInstance <ListObjectFixture>());
            var prop = so.FindProperty(nameof(ListObjectFixture.items));

            prop = prop.GetArrayElementAtIndex(0);
            prop = prop.FindPropertyRelative("test");

            var type = SerializedObjectUtils.FindPropertyType(prop);

            Assert.AreEqual(typeof(float), type);
        }
        public void ArrayObject()
        {
            var so   = new SerializedObject(ScriptableObject.CreateInstance <ArrayObjectFixture>());
            var prop = so.FindProperty(nameof(ArrayObjectFixture.children));

            prop = prop.GetArrayElementAtIndex(0);
            prop = prop.FindPropertyRelative(nameof(ArrayObjectEntry.value));

            var type = SerializedObjectUtils.FindPropertyType(so, prop.propertyPath);

            Assert.AreEqual(typeof(int), type);
        }