private void TestObjectAPI(ArrayTable a)
        {
            var b = a.UnPack();

            AreEqual(a, b);

            var fbb = new FlatBufferBuilder(1);

            fbb.Finish(ArrayTable.Pack(fbb, b).Value);
            var c = ArrayTable.GetRootAsArrayTable(fbb.DataBuffer);

            AreEqual(a, c);

            var jsonText = b.SerializeToJson();
            var d        = ArrayTableT.DeserializeFromJson(jsonText);

            AreEqual(a, d);

            var fbBuffer = b.SerializeToBinary();

            Assert.IsTrue(ArrayTable.ArrayTableBufferHasIdentifier(new ByteBuffer(fbBuffer)));
            var e = ArrayTableT.DeserializeFromBinary(fbBuffer);

            AreEqual(a, e);
        }
Exemplo n.º 2
0
        public void TestFixedLenghtArrays()
        {
            FlatBufferBuilder builder = new FlatBufferBuilder(100);

            float a;

            int[] b = new int[15];
            sbyte c;

            int[,]  d_a = new int[2, 2];
            TestEnum[] d_b = new TestEnum[2];
            TestEnum[,] d_c = new TestEnum[2, 2];

            a = 0.5f;
            for (int i = 0; i < 15; i++)
            {
                b[i] = i;
            }
            c         = 1;
            d_a[0, 0] = 1;
            d_a[0, 1] = 2;
            d_a[1, 0] = 3;
            d_a[1, 1] = 4;
            d_b[0]    = TestEnum.B;
            d_b[1]    = TestEnum.C;
            d_c[0, 0] = TestEnum.A;
            d_c[0, 1] = TestEnum.B;
            d_c[1, 0] = TestEnum.C;
            d_c[1, 1] = TestEnum.B;

            Offset <ArrayStruct> arrayOffset = ArrayStruct.CreateArrayStruct(
                builder, a, b, c, d_a, d_b, d_c);

            // Create a table with the ArrayStruct.
            ArrayTable.StartArrayTable(builder);
            ArrayTable.AddA(builder, arrayOffset);
            Offset <ArrayTable> tableOffset = ArrayTable.EndArrayTable(builder);

            ArrayTable.FinishArrayTableBuffer(builder, tableOffset);

            ArrayTable table = ArrayTable.GetRootAsArrayTable(builder.DataBuffer);

            Assert.AreEqual(table.A?.A, 0.5f);
            for (int i = 0; i < 15; i++)
            {
                Assert.AreEqual(table.A?.B(i), i);
            }
            Assert.AreEqual(table.A?.C, (sbyte)1);
            Assert.AreEqual(table.A?.D(0).A(0), 1);
            Assert.AreEqual(table.A?.D(0).A(1), 2);
            Assert.AreEqual(table.A?.D(1).A(0), 3);
            Assert.AreEqual(table.A?.D(1).A(1), 4);
            Assert.AreEqual(table.A?.D(0).B, TestEnum.B);
            Assert.AreEqual(table.A?.D(1).B, TestEnum.C);
            Assert.AreEqual(table.A?.D(0).C(0), TestEnum.A);
            Assert.AreEqual(table.A?.D(0).C(1), TestEnum.B);
            Assert.AreEqual(table.A?.D(1).C(0), TestEnum.C);
            Assert.AreEqual(table.A?.D(1).C(1), TestEnum.B);
        }
Exemplo n.º 3
0
        private void TestObjectAPI(ArrayTable a)
        {
            var b = a.UnPack();

            AreEqual(a, b);

            var fbb = new FlatBufferBuilder(1);

            fbb.Finish(ArrayTable.Pack(fbb, b).Value);
            var c = ArrayTable.GetRootAsArrayTable(fbb.DataBuffer);

            AreEqual(a, c);
        }
Exemplo n.º 4
0
        private void TestObjectAPI(ArrayTable a)
        {
            var b = a.UnPack();

            AreEqual(a, b);

            var fbb = new FlatBufferBuilder(1);

            fbb.Finish(ArrayTable.Pack(fbb, b).Value);
            var c = ArrayTable.GetRootAsArrayTable(fbb.DataBuffer);

            AreEqual(a, c);

            var jsonText = b.SerializeToJson();
            var d        = ArrayTableT.DeserializeFromJson(jsonText);

            AreEqual(a, d);
        }