public void TestTypeNameSerialization() { var data = new Human() { Items = new List <IUnit>() { new Dog(), new Human() { Items = new List <IUnit>() { new Dog(), new Dog() } } } }; var serializer = new SettingsSerializer(); serializer.SaveJson(data, "TmpResult.json"); SerializeTests.CompareJsons(@"Data\SerializationDeep\ExpectedSettings.json", "TmpResult.json"); var manager = new SettingsManager(); var loadedData = manager.LoadSettings <IUnit>("TmpResult.json"); Assert.AreEqual(JsonConvert.SerializeObject(data), JsonConvert.SerializeObject(loadedData)); var loadedData2 = manager.LoadSettings <Human>("TmpResult.json"); Assert.AreEqual(JsonConvert.SerializeObject(data), JsonConvert.SerializeObject(loadedData2)); }
public void TestMultipleIntances() { var tmpDir = new DirectoryInfo("Tmp"); if (tmpDir.Exists) { tmpDir.Delete(true); Thread.Sleep(100); } var serializer = new SettingsSerializer(); serializer.SaveJson(_settings, @"Tmp\settings.json"); SerializeTests.CompareJsons(@"Data\SerializationDeep2\ExpectedSettings.json", @"Tmp\settings.json"); SerializeTests.CompareJsons(@"Data\SerializationDeep2\Ext0000.json", @"Tmp\Ext0000.json"); SerializeTests.CompareBytes(@"Data\SerializationDeep2\Data0001.bin", @"Tmp\Data0001.bin"); SerializeTests.CompareBytes(@"Data\SerializationDeep2\Data0002.bin", @"Tmp\Data0002.bin"); }
public void TestMultipleIntancesZip() { var tmpDir = new DirectoryInfo("Tmp"); if (tmpDir.Exists) { tmpDir.Delete(true); Thread.Sleep(100); } var serializer = new SettingsSerializer(); serializer.SaveZip(_settings, @"Tmp.zip"); ZipFile.ExtractToDirectory("Tmp.zip", "Tmp"); SerializeTests.CompareJsons(@"Data\SerializationDeep2\Main.json", @"Tmp\Main.json"); SerializeTests.CompareJsons(@"Data\SerializationDeep2\Ext0000Zip.json", @"Tmp\Ext0000.json"); SerializeTests.CompareBytes(@"Data\SerializationDeep2\Data0001.bin", @"Tmp\Data0001.bin"); SerializeTests.CompareBytes(@"Data\SerializationDeep2\Data0002.bin", @"Tmp\Data0002.bin"); }