private void CheckFromTag(bool fill) { var stringValue = "test_string_value_rv"; var intValue = 882882; var shadow = new EasyTestClass(); var tag = new NbtCompound(); tag.Add(new NbtString(nameof(shadow.EasyStringProperty), stringValue)); tag.Add(new NbtInt(nameof(shadow.EasyIntProperty), intValue)); EasyTestClass result = null; if (fill) { result = shadow; NbtSerializer.FillObject(result, tag); } else { result = NbtSerializer.DeserializeObject <EasyTestClass>(tag); } Assert.IsNotNull(result); Assert.AreEqual(stringValue, result.EasyStringProperty); Assert.AreEqual(intValue, result.EasyIntProperty); }
public void TypesTest() { var raw = new TypesTestClass(); var tag = NbtSerializer.SerializeObject(raw); var deserialized = NbtSerializer.DeserializeObject <TypesTestClass>(tag); Assert.IsNotNull(tag); Assert.AreEqual(raw.BoolFalseTestProperty, deserialized.BoolFalseTestProperty); Assert.AreEqual(raw.BoolTrueTestProperty, deserialized.BoolTrueTestProperty); Assert.AreEqual(raw.ByteArrayTestProperty, deserialized.ByteArrayTestProperty); Assert.AreEqual(raw.IntArrayTestProperty, deserialized.IntArrayTestProperty); Assert.AreEqual(raw.ByteTestProperty, deserialized.ByteTestProperty); Assert.AreEqual(raw.SByteTestProperty, deserialized.SByteTestProperty); Assert.AreEqual(raw.ShortTestProperty, deserialized.ShortTestProperty); Assert.AreEqual(raw.UShortTestProperty, deserialized.UShortTestProperty); Assert.AreEqual(raw.IntTestProperty, deserialized.IntTestProperty); Assert.AreEqual(raw.UIntTestProperty, deserialized.UIntTestProperty); Assert.AreEqual(raw.LongTestProperty, deserialized.LongTestProperty); Assert.AreEqual(raw.ULongTestProperty, deserialized.ULongTestProperty); Assert.AreEqual(raw.NbtIntProperty.Value, deserialized.NbtIntProperty.Value); AssertTagValue <NbtByte>(tag, nameof(raw.BoolFalseTestProperty), raw.BoolFalseTestProperty, t => Convert.ToBoolean(t.Value)); AssertTagValue <NbtByte>(tag, nameof(raw.BoolTrueTestProperty), raw.BoolTrueTestProperty, t => Convert.ToBoolean(t.Value)); AssertTagValue <NbtByteArray>(tag, nameof(raw.ByteArrayTestProperty), raw.ByteArrayTestProperty, t => t.Value); AssertTagValue <NbtIntArray>(tag, nameof(raw.IntArrayTestProperty), raw.IntArrayTestProperty, t => t.Value); AssertTagValue <NbtByte>(tag, nameof(raw.ByteTestProperty), raw.ByteTestProperty, t => t.Value); AssertTagValue <NbtByte>(tag, nameof(raw.SByteTestProperty), raw.SByteTestProperty, t => (sbyte)t.Value); AssertTagValue <NbtShort>(tag, nameof(raw.ShortTestProperty), raw.ShortTestProperty, t => t.Value); AssertTagValue <NbtShort>(tag, nameof(raw.UShortTestProperty), raw.UShortTestProperty, t => (ushort)t.Value); AssertTagValue <NbtInt>(tag, nameof(raw.IntTestProperty), raw.IntTestProperty, t => t.Value); AssertTagValue <NbtInt>(tag, nameof(raw.UIntTestProperty), raw.UIntTestProperty, t => (uint)t.Value); AssertTagValue <NbtLong>(tag, nameof(raw.LongTestProperty), raw.LongTestProperty, t => t.Value); AssertTagValue <NbtLong>(tag, nameof(raw.ULongTestProperty), raw.ULongTestProperty, t => (ulong)t.Value); AssertTagValue <NbtInt>(tag, nameof(raw.NbtIntProperty), raw.NbtIntProperty.Value, t => t.Value); }
public void FillTest() { var valuesSet = new List <string>() { "testVal1", "test_val_2", "TestVal3", "TEST_VAL_4" }; var original = new FillTestClass(); original.GetOnlyTestStringList.AddRange(valuesSet); original.GetOnlyTestClassProperty.EasyIntProperty = 321; original.GetOnlyTestClassProperty.EasyStringProperty = "ESP_TEST_FILL"; var tag = NbtSerializer.SerializeObject(original); var result = NbtSerializer.DeserializeObject <FillTestClass>(tag); Assert.IsNotNull(result); Assert.AreEqual(original.GetOnlyTestClassProperty.EasyIntProperty, result.GetOnlyTestClassProperty.EasyIntProperty); Assert.AreEqual(original.GetOnlyTestClassProperty.EasyStringProperty, result.GetOnlyTestClassProperty.EasyStringProperty); CollectionAssert.AreEquivalent(original.GetOnlyTestStringList, result.GetOnlyTestStringList); }