Skip to content

Commit

Permalink
Add pz55 serialize Tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Mutex666 committed Mar 1, 2024
1 parent 16744c5 commit 3d8024d
Show file tree
Hide file tree
Showing 6 changed files with 799 additions and 0 deletions.
9 changes: 9 additions & 0 deletions src/Tests/Serialization/BIPLinkPZ55_SerializeTests.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using DCSFPTests.Serialization.Common;
using Newtonsoft.Json;
using NonVisuals.BindingClasses.BIP;
using System.Collections.Generic;
using Xunit;

namespace DCSFPTests.Serialization {
Expand Down Expand Up @@ -30,6 +31,14 @@ public static void BIPLinkPZ55_ShouldBeSerializable() {
DeepAssert.Equal(s.BIPLights, deseralizedObjFromFile.BIPLights);
}

public static HashSet<BIPLinkPZ55> GetObjects() {
HashSet<BIPLinkPZ55> hashSet = new();
for (int i = 0; i < 3; i++) {
hashSet.Add(GetObject(i));
}
return hashSet;
}

private static BIPLinkPZ55 GetObject(int instanceNbr = 1) {
return new()
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using DCSFPTests.Serialization.Common;
using Newtonsoft.Json;
using NonVisuals.BindingClasses.DCSBIOSBindings;
using System.Collections.Generic;
using Xunit;

namespace DCSFPTests.Serialization {
Expand Down Expand Up @@ -32,6 +33,14 @@ public static void DCSBIOSActionBindingPZ55_ShouldBeSerializable() {
DeepAssert.Equal(s.DCSBIOSInputs, deseralizedObjFromFile.DCSBIOSInputs);
}

public static HashSet<DCSBIOSActionBindingPZ55> GetObjects() {
HashSet<DCSBIOSActionBindingPZ55> hashSet = new();
for (int i = 0; i<3; i++) {
hashSet.Add(GetObject(i));
}
return hashSet;
}

private static DCSBIOSActionBindingPZ55 GetObject(int instanceNbr = 1) {
return new()
{
Expand Down
9 changes: 9 additions & 0 deletions src/Tests/Serialization/KeyBindingPZ55_SerializeTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
using Newtonsoft.Json;
using NonVisuals.BindingClasses.Key;
using MEF;
using System.Collections.Generic;

namespace DCSFPTests.Serialization {
public class KeyBindingPZ55_SerializeTests {
Expand Down Expand Up @@ -62,6 +63,14 @@ public static SwitchPanelPZ55Keys GetSwitchPanelPZ55KeysFromInstance(int instanc
};
}

public static HashSet<KeyBindingPZ55> GetObjects() {
HashSet<KeyBindingPZ55> hashSet = new();
for (int i = 0; i < 3; i++) {
hashSet.Add(GetObject(i));
}
return hashSet;
}

private static KeyBindingPZ55 GetObject(int instanceNbr = 1) {
return new()
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using DCSFPTests.Serialization.Common;
using Newtonsoft.Json;
using NonVisuals.BindingClasses.OSCommand;
using System.Collections.Generic;
using Xunit;

namespace DCSFPTests.Serialization {
Expand Down Expand Up @@ -31,6 +32,14 @@ public static void OSCommandBindingPZ55_ShouldBeSerializable() {
DeepAssert.Equal(s.OSCommandObject, deseralizedObjFromFile.OSCommandObject);
}

public static HashSet<OSCommandBindingPZ55> GetObjects() {
HashSet<OSCommandBindingPZ55> hashSet = new();
for (int i = 0; i < 3; i++) {
hashSet.Add(GetObject(i));
}
return hashSet;
}

private static OSCommandBindingPZ55 GetObject(int instanceNbr = 1) {
return new()
{
Expand Down
46 changes: 46 additions & 0 deletions src/Tests/Serialization/Panels/SwitchPanelPZ55_SerializeTests.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
using DCSFPTests.Serialization.Common;
using NonVisuals.Panels.Saitek.Panels;
using Xunit;
using Newtonsoft.Json;
using ClassLibraryCommon;
using NonVisuals.HID;
using System.Linq;


namespace DCSFPTests.Serialization.Panels {
public class SwitchPanelPZ55_SerializeTests {
[Fact]
public static void SwitchPanelPZ55_ShouldBeSerializable() {
SwitchPanelPZ55 s = GetObject();

string serializedObj = JsonConvert.SerializeObject(s, Formatting.Indented, JSonSettings.JsonDefaultSettings);
// SwitchPanelPZ55 d = JsonConvert.DeserializeObject<SwitchPanelPZ55>(serializedObj);

RepositorySerialized repo = new();
//Save sample file in project (use it only once)
//repo.SaveSerializedObjectToFile(s.GetType(), serializedObj);

//SwitchPanelPZ55 deseralizedObjFromFile = JsonConvert.DeserializeObject<SwitchPanelPZ55>(repo.GetSerializedObjectString(s.GetType()));

// DeepAssert.Equal(s, deseralizedObjFromFile);
// DeepAssert.Equal(d, deseralizedObjFromFile);
}

public static SwitchPanelPZ55 GetObject(int instanceNbr = 1) {
GamingPanelSkeleton gamingPanelSkeleton = new(GamingPanelVendorEnum.Saitek, GamingPanelEnum.PZ55SwitchPanel);
return new SwitchPanelPZ55(new HIDSkeleton(gamingPanelSkeleton, "FakeHidInstanceForTests"))
{
ManualLandingGearLEDs = false,
ManualLandingGearLEDsColorDown = BIPLight_SerializeTests.GetPanelLEDColorFromInstance(instanceNbr),
ManualLandingGearLEDsColorUp = BIPLight_SerializeTests.GetPanelLEDColorFromInstance(instanceNbr + 1),
ManualLandingGearLEDsColorTrans = BIPLight_SerializeTests.GetPanelLEDColorFromInstance(instanceNbr + 2),
ManualLandingGearTransTimeSeconds = instanceNbr + 6,

DCSBiosBindings = DCSBIOSActionBindingPZ55_SerializeTests.GetObjects(),
KeyBindingsHashSet = KeyBindingPZ55_SerializeTests.GetObjects(),
OSCommandList = OSCommandBindingPZ55_SerializeTests.GetObjects().ToList(),
BIPLinkHashSet = BIPLinkPZ55_SerializeTests.GetObjects()
};
}
}
}
Loading

0 comments on commit 3d8024d

Please sign in to comment.