Exemple #1
0
        private static void PerformUndoRedoGeneric <TDebugState, T>(UnityEngine.Rendering.DebugUI.IValueField field, T defaultValue, T valueToSet)
            where TDebugState : DebugState <T>, new()
        {
            DebugState <T> state = ScriptableObject.CreateInstance <TDebugState>();

            state.SetValue(defaultValue, field);

            Undo.RecordObject(state, nameof(PerformUndoRedoGeneric));
            state.SetValue(valueToSet, field);

            Undo.PerformUndo();
            Assert.AreEqual(defaultValue, state.value);

            Undo.PerformRedo();
            Assert.AreEqual(valueToSet, state.value);
        }