diff --git a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingFarmingPanel.cs b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingFarmingPanel.cs index a5cd00231..f9ca52b34 100644 --- a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingFarmingPanel.cs +++ b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingFarmingPanel.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.DCSBIOSBindings { [Serializable] + [SerializeCriticalCustom] public class DCSBIOSActionBindingFarmingPanel : DCSBIOSActionBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ55.cs b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ55.cs index 71b4fe1a6..ed0304139 100644 --- a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ55.cs +++ b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ55.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.DCSBIOSBindings { [Serializable] + [SerializeCriticalCustom] public class DCSBIOSActionBindingPZ55 : DCSBIOSActionBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ69.cs b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ69.cs index 2cacc5fcd..ab00b44a8 100644 --- a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ69.cs +++ b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ69.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.DCSBIOSBindings { [Serializable] + [SerializeCriticalCustom] public class DCSBIOSActionBindingPZ69 : DCSBIOSActionBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ70.cs b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ70.cs index d91f782ad..9a8dadbcb 100644 --- a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ70.cs +++ b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingPZ70.cs @@ -1,10 +1,12 @@ using System; +using ClassLibraryCommon; using MEF; using NonVisuals.Panels.Saitek.Panels; namespace NonVisuals.BindingClasses.DCSBIOSBindings { [Serializable] + [SerializeCriticalCustom] public class DCSBIOSActionBindingPZ70 : DCSBIOSActionBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingTPM.cs b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingTPM.cs index a7abd4e80..a833c1ec8 100644 --- a/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingTPM.cs +++ b/src/NonVisuals/BindingClasses/DCSBIOSBindings/DCSBIOSActionBindingTPM.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.DCSBIOSBindings { [Serializable] + [SerializeCriticalCustom] public class DCSBIOSActionBindingTPM : DCSBIOSActionBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingFarmingPanel.cs b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingFarmingPanel.cs index 90b30fce5..be77f9513 100644 --- a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingFarmingPanel.cs +++ b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingFarmingPanel.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.OSCommand { [Serializable] + [SerializeCriticalCustom] public class OSCommandBindingFarmingPanel : OSCommandBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ55.cs b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ55.cs index cb33c95e8..cf264cee5 100644 --- a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ55.cs +++ b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ55.cs @@ -1,10 +1,12 @@ using System; +using ClassLibraryCommon; using MEF; using NonVisuals.Panels.Saitek; namespace NonVisuals.BindingClasses.OSCommand { [Serializable] + [SerializeCriticalCustom] public class OSCommandBindingPZ55 : OSCommandBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69Emulator.cs b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69Emulator.cs index b9156ef72..975a0900f 100644 --- a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69Emulator.cs +++ b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69Emulator.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.OSCommand { [Serializable] + [SerializeCriticalCustom] public class OSCommandBindingPZ69Emulator : OSCommandBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69FullEmulator.cs b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69FullEmulator.cs index ccd01c727..0f32823ef 100644 --- a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69FullEmulator.cs +++ b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ69FullEmulator.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.OSCommand { [Serializable] + [SerializeCriticalCustom] public class OSCommandBindingPZ69FullEmulator : OSCommandBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ70.cs b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ70.cs index 7ee51c078..412790743 100644 --- a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ70.cs +++ b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingPZ70.cs @@ -1,10 +1,12 @@ using System; +using ClassLibraryCommon; using MEF; using NonVisuals.Panels.Saitek.Panels; namespace NonVisuals.BindingClasses.OSCommand { [Serializable] + [SerializeCriticalCustom] public class OSCommandBindingPZ70 : OSCommandBindingBase { /* diff --git a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingTPM.cs b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingTPM.cs index d7911a7ed..5242dd4cd 100644 --- a/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingTPM.cs +++ b/src/NonVisuals/BindingClasses/OSCommand/OSCommandBindingTPM.cs @@ -1,9 +1,11 @@ using System; +using ClassLibraryCommon; using MEF; namespace NonVisuals.BindingClasses.OSCommand { [Serializable] + [SerializeCriticalCustom] public class OSCommandBindingTPM : OSCommandBindingBase { /* diff --git a/src/Tests/Serialization/Common/RepositorySerialized.cs b/src/Tests/Serialization/Common/RepositorySerialized.cs index a822569af..4f4f5ee5a 100644 --- a/src/Tests/Serialization/Common/RepositorySerialized.cs +++ b/src/Tests/Serialization/Common/RepositorySerialized.cs @@ -39,6 +39,9 @@ internal string GetSerializedObjectString(Type objectType) return File.ReadAllText(GetFile(objectType)); } + /// + /// Even if this function has 0 references, do not delete this, used in tests + /// internal void SaveSerializedObjectToFile(Type objectType, string serialized) { string mockFolderPath = GetMockFolderPath(); diff --git a/src/Tests/Serialization/DCSBIOSActionBindingFarmingPanel_SerializeTests.cs b/src/Tests/Serialization/DCSBIOSActionBindingFarmingPanel_SerializeTests.cs new file mode 100644 index 000000000..1821d2f98 --- /dev/null +++ b/src/Tests/Serialization/DCSBIOSActionBindingFarmingPanel_SerializeTests.cs @@ -0,0 +1,49 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.DCSBIOSBindings; +using Xunit; + +namespace DCSFPTests.Serialization { + public class DCSBIOSActionBindingFarmingPanel_SerializeTests { + [Fact] + public static void DCSBIOSActionBindingFarmingPanel_ShouldBeSerializable() { + DCSBIOSActionBindingFarmingPanel s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + DCSBIOSActionBindingFarmingPanel d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.FarmingPanelKey, d.FarmingPanelKey); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + Assert.Equal(s.Description, d.Description); + Assert.Equal(s.IsSequenced, d.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, d.DCSBIOSInputs); + + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + DCSBIOSActionBindingFarmingPanel deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.FarmingPanelKey, deseralizedObjFromFile.FarmingPanelKey); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + Assert.Equal(s.Description, deseralizedObjFromFile.Description); + Assert.Equal(s.IsSequenced, deseralizedObjFromFile.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, deseralizedObjFromFile.DCSBIOSInputs); + } + + private static DCSBIOSActionBindingFarmingPanel GetObject(int instanceNbr = 1) { + return new() + { + FarmingPanelKey = KeyBindingFarmingPanel_SerializeTests.GetFarmingPanelMKKeysFromInstance(instanceNbr + 9), + WhenTurnedOn = true, + Description = $"dkk aqk {instanceNbr}", + IsSequenced = true, + DCSBIOSInputs = new(){ + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 7), + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 8) + } + }; + } + } +} diff --git a/src/Tests/Serialization/DCSBIOSActionBindingPZ55_SerializeTests.cs b/src/Tests/Serialization/DCSBIOSActionBindingPZ55_SerializeTests.cs new file mode 100644 index 000000000..ef6624569 --- /dev/null +++ b/src/Tests/Serialization/DCSBIOSActionBindingPZ55_SerializeTests.cs @@ -0,0 +1,49 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.DCSBIOSBindings; +using Xunit; + +namespace DCSFPTests.Serialization { + public class DCSBIOSActionBindingPZ55_SerializeTests { + [Fact] + public static void DCSBIOSActionBindingPZ55_ShouldBeSerializable() { + DCSBIOSActionBindingPZ55 s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + DCSBIOSActionBindingPZ55 d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.SwitchPanelPZ55Key, d.SwitchPanelPZ55Key); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + Assert.Equal(s.Description, d.Description); + Assert.Equal(s.IsSequenced, d.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, d.DCSBIOSInputs); + + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + DCSBIOSActionBindingPZ55 deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.SwitchPanelPZ55Key, deseralizedObjFromFile.SwitchPanelPZ55Key); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + Assert.Equal(s.Description, deseralizedObjFromFile.Description); + Assert.Equal(s.IsSequenced, deseralizedObjFromFile.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, deseralizedObjFromFile.DCSBIOSInputs); + } + + private static DCSBIOSActionBindingPZ55 GetObject(int instanceNbr = 1) { + return new() + { + SwitchPanelPZ55Key = KeyBindingPZ55_SerializeTests.GetSwitchPanelPZ55KeysFromInstance(instanceNbr + 4), + WhenTurnedOn = true, + Description = $"iiu kkh {instanceNbr}", + IsSequenced = true, + DCSBIOSInputs = new(){ + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 2), + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 3) + } + }; + } + } +} diff --git a/src/Tests/Serialization/DCSBIOSActionBindingPZ69_SerializeTests.cs b/src/Tests/Serialization/DCSBIOSActionBindingPZ69_SerializeTests.cs new file mode 100644 index 000000000..9576f8a04 --- /dev/null +++ b/src/Tests/Serialization/DCSBIOSActionBindingPZ69_SerializeTests.cs @@ -0,0 +1,52 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.DCSBIOSBindings; +using Xunit; + +namespace DCSFPTests.Serialization { + public class DCSBIOSActionBindingPZ69_SerializeTests { + [Fact] + public static void DCSBIOSActionBindingPZ69_ShouldBeSerializable() { + DCSBIOSActionBindingPZ69 s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + DCSBIOSActionBindingPZ69 d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, d.DialPosition); + Assert.Equal(s.RadioPanelPZ69Knob, d.RadioPanelPZ69Knob); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + Assert.Equal(s.Description, d.Description); + Assert.Equal(s.IsSequenced, d.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, d.DCSBIOSInputs); + + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + DCSBIOSActionBindingPZ69 deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, deseralizedObjFromFile.DialPosition); + Assert.Equal(s.RadioPanelPZ69Knob, deseralizedObjFromFile.RadioPanelPZ69Knob); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + Assert.Equal(s.Description, deseralizedObjFromFile.Description); + Assert.Equal(s.IsSequenced, deseralizedObjFromFile.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, deseralizedObjFromFile.DCSBIOSInputs); + } + + private static DCSBIOSActionBindingPZ69 GetObject(int instanceNbr = 1) { + return new() + { + DialPosition = KeyBindingPZ69DialPosition_SerializeTests.GetPZ69DialPositionFromInstance(instanceNbr+7), + RadioPanelPZ69Knob = KeyBindingPZ69_SerializeTests.GetRadioPanelPZ69KnobsEmulatorFromInstance(instanceNbr + 3), + WhenTurnedOn = true, + Description = $"dds ola {instanceNbr}", + IsSequenced = true, + DCSBIOSInputs = new(){ + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 3), + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 4) + } + }; + } + } +} diff --git a/src/Tests/Serialization/DCSBIOSActionBindingPZ70_SerializeTests.cs b/src/Tests/Serialization/DCSBIOSActionBindingPZ70_SerializeTests.cs new file mode 100644 index 000000000..12280231a --- /dev/null +++ b/src/Tests/Serialization/DCSBIOSActionBindingPZ70_SerializeTests.cs @@ -0,0 +1,52 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.DCSBIOSBindings; +using Xunit; + +namespace DCSFPTests.Serialization { + public class DCSBIOSActionBindingPZ70_SerializeTests { + [Fact] + public static void DCSBIOSActionBindingPZ70_ShouldBeSerializable() { + DCSBIOSActionBindingPZ70 s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + DCSBIOSActionBindingPZ70 d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, d.DialPosition); + Assert.Equal(s.MultiPanelPZ70Knob, d.MultiPanelPZ70Knob); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + Assert.Equal(s.Description, d.Description); + Assert.Equal(s.IsSequenced, d.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, d.DCSBIOSInputs); + + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + DCSBIOSActionBindingPZ70 deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, deseralizedObjFromFile.DialPosition); + Assert.Equal(s.MultiPanelPZ70Knob, deseralizedObjFromFile.MultiPanelPZ70Knob); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + Assert.Equal(s.Description, deseralizedObjFromFile.Description); + Assert.Equal(s.IsSequenced, deseralizedObjFromFile.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, deseralizedObjFromFile.DCSBIOSInputs); + } + + private static DCSBIOSActionBindingPZ70 GetObject(int instanceNbr = 1) { + return new() + { + DialPosition = KeyBindingPZ70_SerializeTests.GetPZ70DialPositionFromInstance(instanceNbr + 4), + MultiPanelPZ70Knob = KeyBindingPZ70_SerializeTests.GetMultiPanelPZ70KnobsFromInstance(instanceNbr + 5), + WhenTurnedOn = true, + Description = $"ecs ivt {instanceNbr}", + IsSequenced = true, + DCSBIOSInputs = new(){ + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 5), + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 6) + } + }; + } + } +} diff --git a/src/Tests/Serialization/DCSBIOSActionBindingTPM_SerializeTests.cs b/src/Tests/Serialization/DCSBIOSActionBindingTPM_SerializeTests.cs new file mode 100644 index 000000000..7f9d2aa8f --- /dev/null +++ b/src/Tests/Serialization/DCSBIOSActionBindingTPM_SerializeTests.cs @@ -0,0 +1,49 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.DCSBIOSBindings; +using Xunit; + +namespace DCSFPTests.Serialization { + public class DCSBIOSActionBindingTPM_SerializeTests { + [Fact] + public static void DCSBIOSActionBindingTPM_ShouldBeSerializable() { + DCSBIOSActionBindingTPM s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + DCSBIOSActionBindingTPM d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.TPMSwitch, d.TPMSwitch); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + Assert.Equal(s.Description, d.Description); + Assert.Equal(s.IsSequenced, d.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, d.DCSBIOSInputs); + + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + DCSBIOSActionBindingTPM deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.TPMSwitch, deseralizedObjFromFile.TPMSwitch); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + Assert.Equal(s.Description, deseralizedObjFromFile.Description); + Assert.Equal(s.IsSequenced, deseralizedObjFromFile.IsSequenced); + DeepAssert.Equal(s.DCSBIOSInputs, deseralizedObjFromFile.DCSBIOSInputs); + } + + private static DCSBIOSActionBindingTPM GetObject(int instanceNbr = 1) { + return new() + { + TPMSwitch = KeyBindingTPM_SerializeTests.GetTPMPanelSwitchesFromInstance(instanceNbr + 7), + WhenTurnedOn = true, + Description = $"yea tal {instanceNbr}", + IsSequenced = true, + DCSBIOSInputs = new(){ + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 9), + DCSBIOSInput_SerializeTests.GetObject(instanceNbr + 10) + } + }; + } + } +} diff --git a/src/Tests/Serialization/KeyBindingFarmingPanel_SerializeTests.cs b/src/Tests/Serialization/KeyBindingFarmingPanel_SerializeTests.cs index 803fb8792..752dea1e0 100644 --- a/src/Tests/Serialization/KeyBindingFarmingPanel_SerializeTests.cs +++ b/src/Tests/Serialization/KeyBindingFarmingPanel_SerializeTests.cs @@ -35,7 +35,7 @@ public static void KeyBindingFarmingPanel_ShouldBeSerializable() { Assert.Equal(s.OSKeyPress.Description, deseralizedObjFromFile.OSKeyPress.Description); } - private static FarmingPanelMKKeys GetFarmingPanelMKKeysFromInstance(int instanceNbr) { + public static FarmingPanelMKKeys GetFarmingPanelMKKeysFromInstance(int instanceNbr) { return instanceNbr switch { 1 => FarmingPanelMKKeys.BUTTON_1, diff --git a/src/Tests/Serialization/KeyBindingPZ55_SerializeTests.cs b/src/Tests/Serialization/KeyBindingPZ55_SerializeTests.cs index 80b798510..03f7b9f38 100644 --- a/src/Tests/Serialization/KeyBindingPZ55_SerializeTests.cs +++ b/src/Tests/Serialization/KeyBindingPZ55_SerializeTests.cs @@ -35,7 +35,7 @@ public static void KeyBindingPZ55_ShouldBeSerializable() { Assert.Equal(s.OSKeyPress.Description, deseralizedObjFromFile.OSKeyPress.Description); } - private static SwitchPanelPZ55Keys GetSwitchPanelPZ55KeysFromInstance(int instanceNbr) { + public static SwitchPanelPZ55Keys GetSwitchPanelPZ55KeysFromInstance(int instanceNbr) { return instanceNbr switch { 1 => SwitchPanelPZ55Keys.SWITCHKEY_MASTER_BAT, diff --git a/src/Tests/Serialization/KeyBindingPZ70_SerializeTests.cs b/src/Tests/Serialization/KeyBindingPZ70_SerializeTests.cs index 8da0b1ede..f33e34e9b 100644 --- a/src/Tests/Serialization/KeyBindingPZ70_SerializeTests.cs +++ b/src/Tests/Serialization/KeyBindingPZ70_SerializeTests.cs @@ -51,7 +51,7 @@ public static PZ70DialPosition GetPZ70DialPositionFromInstance(int instanceNbr) }; } - private static MultiPanelPZ70Knobs GetMultiPanelPZ70KnobsFromInstance(int instanceNbr) { + public static MultiPanelPZ70Knobs GetMultiPanelPZ70KnobsFromInstance(int instanceNbr) { return instanceNbr switch { 1 => MultiPanelPZ70Knobs.KNOB_ALT, diff --git a/src/Tests/Serialization/KeyBindingTPM_SerializeTests.cs b/src/Tests/Serialization/KeyBindingTPM_SerializeTests.cs index 2a2d074d8..946f3c917 100644 --- a/src/Tests/Serialization/KeyBindingTPM_SerializeTests.cs +++ b/src/Tests/Serialization/KeyBindingTPM_SerializeTests.cs @@ -34,7 +34,7 @@ public static void KeyBindingTPM_ShouldBeSerializable() { Assert.Equal(s.OSKeyPress.Description, deseralizedObjFromFile.OSKeyPress.Description); } - private static TPMPanelSwitches GetTPMPanelSwitchesFromInstance(int instanceNbr) { + public static TPMPanelSwitches GetTPMPanelSwitchesFromInstance(int instanceNbr) { return instanceNbr switch { 1 => TPMPanelSwitches.G1, diff --git a/src/Tests/Serialization/OSCommandBindingFarmingPanel_SerializeTests.cs b/src/Tests/Serialization/OSCommandBindingFarmingPanel_SerializeTests.cs new file mode 100644 index 000000000..00846f2aa --- /dev/null +++ b/src/Tests/Serialization/OSCommandBindingFarmingPanel_SerializeTests.cs @@ -0,0 +1,43 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.OSCommand; +using Xunit; + +namespace DCSFPTests.Serialization { + public class OSCommandBindingFarmingPanel_SerializeTests { + [Fact] + public static void OSCommandBindingFarmingPanel_ShouldBeSerializable() { + OSCommandBindingFarmingPanel s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + OSCommandBindingFarmingPanel d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.FarmingPanelKey, d.FarmingPanelKey); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, d.OSCommandObject); + + //Ignored : + //HasSequence + //IsSequenced + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + OSCommandBindingFarmingPanel deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.FarmingPanelKey, deseralizedObjFromFile.FarmingPanelKey); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, deseralizedObjFromFile.OSCommandObject); + } + + private static OSCommandBindingFarmingPanel GetObject(int instanceNbr = 1) { + return new() + { + FarmingPanelKey = KeyBindingFarmingPanel_SerializeTests.GetFarmingPanelMKKeysFromInstance(instanceNbr+7), + WhenTurnedOn = true, + OSCommandObject = OSCommand_SerializeTests.GetObject(instanceNbr+2) + }; + } + } +} diff --git a/src/Tests/Serialization/OSCommandBindingPZ55_SerializeTests.cs b/src/Tests/Serialization/OSCommandBindingPZ55_SerializeTests.cs new file mode 100644 index 000000000..e3877b70b --- /dev/null +++ b/src/Tests/Serialization/OSCommandBindingPZ55_SerializeTests.cs @@ -0,0 +1,43 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.OSCommand; +using Xunit; + +namespace DCSFPTests.Serialization { + public class OSCommandBindingPZ55_SerializeTests { + [Fact] + public static void OSCommandBindingPZ55_ShouldBeSerializable() { + OSCommandBindingPZ55 s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + OSCommandBindingPZ55 d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.SwitchPanelPZ55Key, d.SwitchPanelPZ55Key); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, d.OSCommandObject); + + //Ignored : + //HasSequence + //IsSequenced + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + OSCommandBindingPZ55 deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.SwitchPanelPZ55Key, deseralizedObjFromFile.SwitchPanelPZ55Key); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, deseralizedObjFromFile.OSCommandObject); + } + + private static OSCommandBindingPZ55 GetObject(int instanceNbr = 1) { + return new() + { + SwitchPanelPZ55Key = KeyBindingPZ55_SerializeTests.GetSwitchPanelPZ55KeysFromInstance(instanceNbr+4), + WhenTurnedOn = true, + OSCommandObject = OSCommand_SerializeTests.GetObject(instanceNbr+5) + }; + } + } +} diff --git a/src/Tests/Serialization/OSCommandBindingPZ69Emulator_SerializeTests.cs b/src/Tests/Serialization/OSCommandBindingPZ69Emulator_SerializeTests.cs new file mode 100644 index 000000000..509cba982 --- /dev/null +++ b/src/Tests/Serialization/OSCommandBindingPZ69Emulator_SerializeTests.cs @@ -0,0 +1,43 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.OSCommand; +using Xunit; + +namespace DCSFPTests.Serialization { + public class OSCommandBindingPZ69Emulator_SerializeTests { + [Fact] + public static void OSCommandBindingPZ69Emulator_ShouldBeSerializable() { + OSCommandBindingPZ69Emulator s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + OSCommandBindingPZ69Emulator d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.RadioPanelPZ69Key, d.RadioPanelPZ69Key); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, d.OSCommandObject); + + //Ignored : + //HasSequence + //IsSequenced + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + OSCommandBindingPZ69Emulator deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.RadioPanelPZ69Key, deseralizedObjFromFile.RadioPanelPZ69Key); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, deseralizedObjFromFile.OSCommandObject); + } + + private static OSCommandBindingPZ69Emulator GetObject(int instanceNbr = 1) { + return new() + { + RadioPanelPZ69Key = KeyBindingPZ69_SerializeTests.GetRadioPanelPZ69KnobsEmulatorFromInstance(instanceNbr+2), + WhenTurnedOn = true, + OSCommandObject = OSCommand_SerializeTests.GetObject(instanceNbr+1) + }; + } + } +} diff --git a/src/Tests/Serialization/OSCommandBindingPZ69FullEmulator_SerializeTests.cs b/src/Tests/Serialization/OSCommandBindingPZ69FullEmulator_SerializeTests.cs new file mode 100644 index 000000000..f75fd8385 --- /dev/null +++ b/src/Tests/Serialization/OSCommandBindingPZ69FullEmulator_SerializeTests.cs @@ -0,0 +1,46 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.OSCommand; +using Xunit; + +namespace DCSFPTests.Serialization { + public class OSCommandBindingPZ69FullEmulator_SerializeTests { + [Fact] + public static void OSCommandBindingPZ69FullEmulator_ShouldBeSerializable() { + OSCommandBindingPZ69FullEmulator s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + OSCommandBindingPZ69FullEmulator d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, d.DialPosition); + Assert.Equal(s.RadioPanelPZ69Key, d.RadioPanelPZ69Key); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, d.OSCommandObject); + + //Ignored : + //HasSequence + //IsSequenced + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + OSCommandBindingPZ69FullEmulator deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, deseralizedObjFromFile.DialPosition); + Assert.Equal(s.RadioPanelPZ69Key, deseralizedObjFromFile.RadioPanelPZ69Key); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, deseralizedObjFromFile.OSCommandObject); + } + + private static OSCommandBindingPZ69FullEmulator GetObject(int instanceNbr = 1) { + return new() + { + DialPosition = KeyBindingPZ69DialPosition_SerializeTests.GetPZ69DialPositionFromInstance(instanceNbr+5), + RadioPanelPZ69Key = KeyBindingPZ69_SerializeTests.GetRadioPanelPZ69KnobsEmulatorFromInstance(instanceNbr+6), + WhenTurnedOn = true, + OSCommandObject = OSCommand_SerializeTests.GetObject(instanceNbr+7) + }; + } + } +} diff --git a/src/Tests/Serialization/OSCommandBindingPZ70_SerializeTests.cs b/src/Tests/Serialization/OSCommandBindingPZ70_SerializeTests.cs new file mode 100644 index 000000000..ad3ae80e5 --- /dev/null +++ b/src/Tests/Serialization/OSCommandBindingPZ70_SerializeTests.cs @@ -0,0 +1,47 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.OSCommand; +using Xunit; + + +namespace DCSFPTests.Serialization { + public class OSCommandBindingPZ70_SerializeTests { + [Fact] + public static void OSCommandBindingPZ70_ShouldBeSerializable() { + OSCommandBindingPZ70 s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + OSCommandBindingPZ70 d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, d.DialPosition); + Assert.Equal(s.MultiPanelPZ70Knob, d.MultiPanelPZ70Knob); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, d.OSCommandObject); + + //Ignored : + //HasSequence + //IsSequenced + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + OSCommandBindingPZ70 deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.DialPosition, deseralizedObjFromFile.DialPosition); + Assert.Equal(s.MultiPanelPZ70Knob, d.MultiPanelPZ70Knob); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, deseralizedObjFromFile.OSCommandObject); + } + + private static OSCommandBindingPZ70 GetObject(int instanceNbr = 1) { + return new() + { + DialPosition = KeyBindingPZ70_SerializeTests.GetPZ70DialPositionFromInstance(instanceNbr + 3), + MultiPanelPZ70Knob = KeyBindingPZ70_SerializeTests.GetMultiPanelPZ70KnobsFromInstance(instanceNbr + 2), + WhenTurnedOn = true, + OSCommandObject = OSCommand_SerializeTests.GetObject(instanceNbr + 4) + }; + } + } +} diff --git a/src/Tests/Serialization/OSCommandBindingTPM_SerializeTests.cs b/src/Tests/Serialization/OSCommandBindingTPM_SerializeTests.cs new file mode 100644 index 000000000..f45ff0d67 --- /dev/null +++ b/src/Tests/Serialization/OSCommandBindingTPM_SerializeTests.cs @@ -0,0 +1,44 @@ +using DCSFPTests.Serialization.Common; +using Newtonsoft.Json; +using NonVisuals.BindingClasses.OSCommand; +using Xunit; + + +namespace DCSFPTests.Serialization { + public class OSCommandBindingTPM_SerializeTests { + [Fact] + public static void OSCommandBindingTPM_ShouldBeSerializable() { + OSCommandBindingTPM s = GetObject(); + + string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings); + OSCommandBindingTPM d = JsonConvert.DeserializeObject(serializedObj, JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.TPMSwitch, d.TPMSwitch); + Assert.Equal(s.WhenTurnedOn, d.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, d.OSCommandObject); + + //Ignored : + //HasSequence + //IsSequenced + + RepositorySerialized repo = new(); + //Save sample file in project (use it only once) + //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); + + OSCommandBindingTPM deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + + Assert.Equal(s.TPMSwitch, deseralizedObjFromFile.TPMSwitch); + Assert.Equal(s.WhenTurnedOn, deseralizedObjFromFile.WhenTurnedOn); + DeepAssert.Equal(s.OSCommandObject, deseralizedObjFromFile.OSCommandObject); + } + + private static OSCommandBindingTPM GetObject(int instanceNbr = 1) { + return new() + { + TPMSwitch = KeyBindingTPM_SerializeTests.GetTPMPanelSwitchesFromInstance(instanceNbr + 6), + WhenTurnedOn = true, + OSCommandObject = OSCommand_SerializeTests.GetObject(instanceNbr + 2) + }; + } + } +} diff --git a/src/Tests/Serialization/Resources/DCSBIOSActionBindingFarmingPanel.json b/src/Tests/Serialization/Resources/DCSBIOSActionBindingFarmingPanel.json new file mode 100644 index 000000000..a43c2dbd8 --- /dev/null +++ b/src/Tests/Serialization/Resources/DCSBIOSActionBindingFarmingPanel.json @@ -0,0 +1,127 @@ +{ + "$type": "NonVisuals.BindingClasses.DCSBIOSBindings.DCSBIOSActionBindingFarmingPanel, NonVisuals", + "FarmingPanelKey": 9, + "WhenTurnedOn": true, + "Description": "dkk aqk 1", + "DCSBIOSInputs": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7418", + "Delay": 1, + "ControlDescription": "ikf xsd 8", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7419", + "Delay": 1, + "ControlDescription": "ikf xsd 9", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + } + ] + }, + "WhenOnTurnedOn": true, + "IsSequenced": true +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ55.json b/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ55.json new file mode 100644 index 000000000..f88bf4212 --- /dev/null +++ b/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ55.json @@ -0,0 +1,127 @@ +{ + "$type": "NonVisuals.BindingClasses.DCSBIOSBindings.DCSBIOSActionBindingPZ55, NonVisuals", + "SwitchPanelPZ55Key": 16, + "WhenTurnedOn": true, + "Description": "iiu kkh 1", + "DCSBIOSInputs": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7413", + "Delay": 1, + "ControlDescription": "ikf xsd 3", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7414", + "Delay": 1, + "ControlDescription": "ikf xsd 4", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + } + ] + }, + "WhenOnTurnedOn": true, + "IsSequenced": true +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ69.json b/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ69.json new file mode 100644 index 000000000..827cf74e9 --- /dev/null +++ b/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ69.json @@ -0,0 +1,128 @@ +{ + "$type": "NonVisuals.BindingClasses.DCSBIOSBindings.DCSBIOSActionBindingPZ69, NonVisuals", + "DialPosition": 4096, + "RadioPanelPZ69Knob": 8, + "WhenTurnedOn": true, + "Description": "dds ola 1", + "DCSBIOSInputs": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7414", + "Delay": 1, + "ControlDescription": "ikf xsd 4", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7415", + "Delay": 1, + "ControlDescription": "ikf xsd 5", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + } + ] + }, + "WhenOnTurnedOn": true, + "IsSequenced": true +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ70.json b/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ70.json new file mode 100644 index 000000000..9066318d5 --- /dev/null +++ b/src/Tests/Serialization/Resources/DCSBIOSActionBindingPZ70.json @@ -0,0 +1,128 @@ +{ + "$type": "NonVisuals.BindingClasses.DCSBIOSBindings.DCSBIOSActionBindingPZ70, NonVisuals", + "DialPosition": 16, + "MultiPanelPZ70Knob": 32, + "WhenTurnedOn": true, + "Description": "ecs ivt 1", + "DCSBIOSInputs": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7416", + "Delay": 1, + "ControlDescription": "ikf xsd 6", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 7417", + "Delay": 1, + "ControlDescription": "ikf xsd 7", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + } + ] + }, + "WhenOnTurnedOn": true, + "IsSequenced": true +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/DCSBIOSActionBindingTPM.json b/src/Tests/Serialization/Resources/DCSBIOSActionBindingTPM.json new file mode 100644 index 000000000..2914eab56 --- /dev/null +++ b/src/Tests/Serialization/Resources/DCSBIOSActionBindingTPM.json @@ -0,0 +1,127 @@ +{ + "$type": "NonVisuals.BindingClasses.DCSBIOSBindings.DCSBIOSActionBindingTPM, NonVisuals", + "TPMSwitch": 128, + "WhenTurnedOn": true, + "Description": "yea tal 1", + "DCSBIOSInputs": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 74110", + "Delay": 1, + "ControlDescription": "ikf xsd 10", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInput, DCS-BIOS", + "SelectedDCSBIOSInterface": { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + "ControlId": "CtrlId 74111", + "Delay": 1, + "ControlDescription": "ikf xsd 11", + "ControlType": "xmd rty", + "DCSBIOSInputInterfaces": { + "$type": "System.Collections.Generic.List`1[[DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS]], System.Private.CoreLib", + "$values": [ + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9521", + "Description": "urt vdf 1", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 5, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + }, + { + "$type": "DCS_BIOS.Serialized.DCSBIOSInputInterface, DCS-BIOS", + "Delay": 1, + "ControlId": "CtrlId 9522", + "Description": "urt vdf 2", + "Interface": 4, + "MaxValue": 2, + "SuggestedStep": 3, + "SpecifiedActionArgument": "dov csd", + "SpecifiedSetStateArgument": 4, + "SpecifiedVariableStepArgument": 6, + "SpecifiedFixedStepArgument": 0, + "SpecifiedSetStringArgument": "sdd vbn", + "SelectedArgumentValue": "sdd vbn" + } + ] + } + } + ] + }, + "WhenOnTurnedOn": true, + "IsSequenced": true +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/OSCommandBindingFarmingPanel.json b/src/Tests/Serialization/Resources/OSCommandBindingFarmingPanel.json new file mode 100644 index 000000000..38567f960 --- /dev/null +++ b/src/Tests/Serialization/Resources/OSCommandBindingFarmingPanel.json @@ -0,0 +1,12 @@ +{ + "$type": "NonVisuals.BindingClasses.OSCommand.OSCommandBindingFarmingPanel, NonVisuals", + "FarmingPanelKey": 7, + "WhenTurnedOn": true, + "OSCommandObject": { + "$type": "NonVisuals.OSCommand, NonVisuals", + "Command": "ggt ooi 3", + "Arguments": "bvr opm 3", + "Name": "hrv kfp 3", + "IsEmpty": false + } +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/OSCommandBindingPZ55.json b/src/Tests/Serialization/Resources/OSCommandBindingPZ55.json new file mode 100644 index 000000000..70c58554d --- /dev/null +++ b/src/Tests/Serialization/Resources/OSCommandBindingPZ55.json @@ -0,0 +1,12 @@ +{ + "$type": "NonVisuals.BindingClasses.OSCommand.OSCommandBindingPZ55, NonVisuals", + "SwitchPanelPZ55Key": 16, + "WhenTurnedOn": true, + "OSCommandObject": { + "$type": "NonVisuals.OSCommand, NonVisuals", + "Command": "ggt ooi 6", + "Arguments": "bvr opm 6", + "Name": "hrv kfp 6", + "IsEmpty": false + } +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/OSCommandBindingPZ69Emulator.json b/src/Tests/Serialization/Resources/OSCommandBindingPZ69Emulator.json new file mode 100644 index 000000000..f935f07c0 --- /dev/null +++ b/src/Tests/Serialization/Resources/OSCommandBindingPZ69Emulator.json @@ -0,0 +1,12 @@ +{ + "$type": "NonVisuals.BindingClasses.OSCommand.OSCommandBindingPZ69Emulator, NonVisuals", + "RadioPanelPZ69Key": 4, + "WhenTurnedOn": true, + "OSCommandObject": { + "$type": "NonVisuals.OSCommand, NonVisuals", + "Command": "ggt ooi 2", + "Arguments": "bvr opm 2", + "Name": "hrv kfp 2", + "IsEmpty": false + } +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/OSCommandBindingPZ69FullEmulator.json b/src/Tests/Serialization/Resources/OSCommandBindingPZ69FullEmulator.json new file mode 100644 index 000000000..e78a26c6c --- /dev/null +++ b/src/Tests/Serialization/Resources/OSCommandBindingPZ69FullEmulator.json @@ -0,0 +1,13 @@ +{ + "$type": "NonVisuals.BindingClasses.OSCommand.OSCommandBindingPZ69FullEmulator, NonVisuals", + "DialPosition": 32, + "RadioPanelPZ69Key": 64, + "WhenTurnedOn": true, + "OSCommandObject": { + "$type": "NonVisuals.OSCommand, NonVisuals", + "Command": "ggt ooi 8", + "Arguments": "bvr opm 8", + "Name": "hrv kfp 8", + "IsEmpty": false + } +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/OSCommandBindingPZ70.json b/src/Tests/Serialization/Resources/OSCommandBindingPZ70.json new file mode 100644 index 000000000..f3f7e25ff --- /dev/null +++ b/src/Tests/Serialization/Resources/OSCommandBindingPZ70.json @@ -0,0 +1,13 @@ +{ + "$type": "NonVisuals.BindingClasses.OSCommand.OSCommandBindingPZ70, NonVisuals", + "DialPosition": 8, + "MultiPanelPZ70Knob": 4, + "WhenTurnedOn": true, + "OSCommandObject": { + "$type": "NonVisuals.OSCommand, NonVisuals", + "Command": "ggt ooi 5", + "Arguments": "bvr opm 5", + "Name": "hrv kfp 5", + "IsEmpty": false + } +} \ No newline at end of file diff --git a/src/Tests/Serialization/Resources/OSCommandBindingTPM.json b/src/Tests/Serialization/Resources/OSCommandBindingTPM.json new file mode 100644 index 000000000..c6bc68411 --- /dev/null +++ b/src/Tests/Serialization/Resources/OSCommandBindingTPM.json @@ -0,0 +1,12 @@ +{ + "$type": "NonVisuals.BindingClasses.OSCommand.OSCommandBindingTPM, NonVisuals", + "TPMSwitch": 64, + "WhenTurnedOn": true, + "OSCommandObject": { + "$type": "NonVisuals.OSCommand, NonVisuals", + "Command": "ggt ooi 3", + "Arguments": "bvr opm 3", + "Name": "hrv kfp 3", + "IsEmpty": false + } +} \ No newline at end of file diff --git a/src/Tests/Serialization/StreamDeckPushRotary_SerializeTests.cs b/src/Tests/Serialization/StreamDeckPushRotary_SerializeTests.cs index 4a3cdac95..cb0bfb355 100644 --- a/src/Tests/Serialization/StreamDeckPushRotary_SerializeTests.cs +++ b/src/Tests/Serialization/StreamDeckPushRotary_SerializeTests.cs @@ -30,6 +30,7 @@ public static void StreamDeckPushRotary_ShouldBeSerializable() { //repo.SaveSerializedObjectToFile(s.GetType(), serializedObj); StreamDeckPushRotary deseralizedObjFromFile = JsonConvert.DeserializeObject(repo.GetSerializedObjectString(s.GetType()), JSonSettings.JsonDefaultSettings); + Assert.Equal(s.StreamDeckPushRotaryName, deseralizedObjFromFile.StreamDeckPushRotaryName); } public static EnumStreamDeckPushRotaryNames GetStreamDeckPushRotaryNameFromInstance(int instanceNbr) {