private void TestObjectAPI(Monster a) { var b = a.UnPack(); AreEqual(a, b); var fbb = new FlatBufferBuilder(1); fbb.Finish(Monster.Pack(fbb, b).Value); var c = Monster.GetRootAsMonster(fbb.DataBuffer); AreEqual(a, c); var jsonText = b.SerializeToJson(); var d = MonsterT.DeserializeFromJson(jsonText); AreEqual(a, d); var fbBuffer = b.SerializeToBinary(); Assert.IsTrue(Monster.MonsterBufferHasIdentifier(new ByteBuffer(fbBuffer))); var e = MonsterT.DeserializeFromBinary(fbBuffer); AreEqual(a, e); }
public void CanReadJsonFile() { var jsonText = File.ReadAllText(@"../monsterdata_test.json"); var mon = MonsterT.DeserializeFromJson(jsonText); var fbb = new FlatBufferBuilder(1); fbb.Finish(Monster.Pack(fbb, mon).Value); TestBuffer(fbb.DataBuffer); }
private void TestObjectAPI(Monster a) { var b = a.UnPack(); AreEqual(a, b); var fbb = new FlatBufferBuilder(1); fbb.Finish(Monster.Pack(fbb, b).Value); var c = Monster.GetRootAsMonster(fbb.DataBuffer); AreEqual(a, c); var jsonText = b.SerializeToJson(); var d = MonsterT.DeserializeFromJson(jsonText); AreEqual(a, d); }
private void AreEqual(Monster a, MonsterT b) { Assert.AreEqual(a.Hp, b.Hp); Assert.AreEqual(a.Mana, b.Mana); Assert.AreEqual(a.Name, b.Name); var posA = a.Pos; var posB = b.Pos; if (posA != null) { Assert.AreEqual(posA.Value.X, posB.X); Assert.AreEqual(posA.Value.Y, posB.Y); Assert.AreEqual(posA.Value.Z, posB.Z); Assert.AreEqual(posA.Value.Test1, posB.Test1); Assert.AreEqual(posA.Value.Test2, posB.Test2); var tA = posA.Value.Test3; var tB = posB.Test3; Assert.AreEqual(tA.A, tB.A); Assert.AreEqual(tA.B, tB.B); } Assert.AreEqual(a.TestType, b.Test.Type); if (a.TestType == Any.Monster) { var monster2A = a.Test <Monster>().Value; var monster2B = b.Test.AsMonster(); Assert.AreEqual(monster2A.Name, monster2B.Name); } Assert.AreEqual(a.InventoryLength, b.Inventory.Count); for (var i = 0; i < a.InventoryLength; ++i) { Assert.AreEqual(a.Inventory(i), b.Inventory[i]); } var inventoryArray = a.GetInventoryArray(); var inventoryArrayLength = inventoryArray == null ? 0 : inventoryArray.Length; Assert.AreEqual(inventoryArrayLength, b.Inventory.Count); for (var i = 0; i < inventoryArrayLength; ++i) { Assert.AreEqual(inventoryArray[i], b.Inventory[i]); } Assert.AreEqual(a.Test4Length, b.Test4.Count); for (var i = 0; i < a.Test4Length; ++i) { var t4A = a.Test4(i); var t4B = b.Test4[i]; Assert.AreEqual(t4A.Value.A, t4B.A); Assert.AreEqual(t4A.Value.B, t4B.B); } Assert.AreEqual(a.TestarrayofstringLength, b.Testarrayofstring.Count); for (var i = 0; i < a.TestarrayofstringLength; ++i) { Assert.AreEqual(a.Testarrayofstring(i), b.Testarrayofstring[i]); } Assert.AreEqual(a.Testbool, b.Testbool); Assert.AreEqual(a.TestarrayofboolsLength, b.Testarrayofbools.Count); for (var i = 0; i < a.TestarrayofboolsLength; ++i) { Assert.AreEqual(a.Testarrayofbools(i), b.Testarrayofbools[i]); } Assert.AreEqual(a.VectorOfLongsLength, b.VectorOfLongs.Count); for (var i = 0; i < a.VectorOfLongsLength; ++i) { Assert.AreEqual(a.VectorOfLongs(i), b.VectorOfLongs[i]); } Assert.AreEqual(a.VectorOfDoublesLength, b.VectorOfDoubles.Count); for (var i = 0; i < a.VectorOfDoublesLength; ++i) { Assert.AreEqual(a.VectorOfDoubles(i), b.VectorOfDoubles[i]); } Assert.AreEqual(a.VectorOfEnumsLength, b.VectorOfEnums.Count); for (var i = 0; i < a.VectorOfEnumsLength; ++i) { Assert.AreEqual(a.VectorOfEnums(i), b.VectorOfEnums[i]); } }