public void TestGenerated() { const string str = "{\n\"S1\":" + "{\n\"X\":345,\n\"Y\":\"test\"\n},\n" + "\"F\":222,\n" + "\"S2\":" + "{\n\"X\":-346,\n\"Y\":\"test1\"\n}\n" + "}"; var jd = new Sample3_JsonDeserializer(); var w = (Sample3)jd.FromString(str); Assert.AreEqual(345, w.S1.X); Assert.AreEqual("test", w.S1.Y); Assert.AreEqual(222, w.F); Assert.AreEqual(-346, w.S2.X); Assert.AreEqual("test1", w.S2.Y); var jdg = new JsonDeserializerGenerator(); jdg.Assembly = GetType().Assembly; var w1 = new Sample1(); jdg.FromString(w1, "{\"X\":88}"); Assert.IsInstanceOfType(w1, typeof(Sample1)); Assert.AreEqual(88, w1.X); var w2 = jdg.FromString("{\"class\":\"YuzuTest.Sample1, YuzuTest\",\"X\":99}"); Assert.IsInstanceOfType(w2, typeof(Sample1)); Assert.AreEqual(99, ((Sample1)w2).X); var w3 = new SampleMemberI(); jdg.FromString(w3, "{\"class\":\"YuzuTest.SampleMemberI, YuzuTest\"}"); Assert.AreEqual(71, ((SampleMemberI)w3).X); }
public void TestGenerated() { var str = "20 01 00 " + XS(typeof(Sample3)) + " 03 00 " + XS("S1", RoughType.Record, "F", RoughType.Int, "S2", RoughType.Record) + " 01 00 02 00 " + XS(typeof(Sample1)) + " 02 00 " + XS("X", RoughType.Int, "Y", RoughType.String) + " 01 00 59 01 00 00 02 00 " + XS("test") + " 00 00 " + "02 00 DE 00 00 00 " + "03 00 03 00 " + XS(typeof(Sample2)) + " 02 00 " + XS("X", RoughType.Int, "Y", RoughType.String) + " 01 00 A6 FE FF FF 02 00 " + XS("test1") + " 00 00 00 00"; var bd = new BinaryDeserializerGen(); bd.Options.TagMode = TagMode.Names; var w = (Sample3)bd.FromBytes(SX(str)); Assert.AreEqual(345, w.S1.X); Assert.AreEqual("test", w.S1.Y); Assert.AreEqual(222, w.F); Assert.AreEqual(-346, w.S2.X); Assert.AreEqual("test1", w.S2.Y); var w1 = new Sample1(); bd.FromBytes(w1, SX("20 02 00 01 00 58 00 00 00 00 00")); Assert.IsInstanceOfType(w1, typeof(Sample1)); Assert.AreEqual(88, w1.X); var w2 = bd.FromBytes(SX("20 02 00 01 00 63 00 00 00 00 00")); Assert.IsInstanceOfType(w2, typeof(Sample1)); Assert.AreEqual(99, ((Sample1)w2).X); var w3 = new SampleMemberI(); bd.FromBytes(w3, SX( "20 04 00 " + XS(typeof(SampleMemberI)) + " 01 00 " + XS("X", RoughType.Int) + " 00 00")); Assert.AreEqual(71, ((SampleMemberI)w3).X); }