TEST(XmlDocumentSerializationTest, EmptyXmlString) { AmfXmlDocument val; v8 expected { 0x07, 0x01 }; ASSERT_EQ(expected, val.serialize()); val = AmfXmlDocument(""); ASSERT_EQ(expected, val.serialize()); }
TEST(XmlSerializationTest, SerializationCacheNotShared) { SerializationContext ctx; isEqual(v8 { 0x0b, 0x01 }, AmfXml("").serialize(ctx)); isEqual(v8 { 0x0b, 0x07, 0x66, 0x6f, 0x6f }, AmfXml("foo").serialize(ctx)); isEqual(v8 { 0x0b, 0x00 }, AmfXml("").serialize(ctx)); isEqual(v8 { 0x0b, 0x02 }, AmfXml("foo").serialize(ctx)); isEqual(v8 { 0x07, 0x07, 0x67, 0x6f, 0x6f }, AmfXmlDocument("goo").serialize(ctx)); isEqual(v8 { 0x0b, 0x00 }, AmfXml("").serialize(ctx)); isEqual(v8 { 0x0b, 0x02 }, AmfXml("foo").serialize(ctx)); isEqual(v8 { 0x0b, 0x07, 0x67, 0x6f, 0x6f }, AmfXml("goo").serialize(ctx)); isEqual(v8 { 0x06, 0x07, 0x66, 0x6f, 0x6f }, AmfString("foo").serialize(ctx)); isEqual(v8 { 0x06, 0x07, 0x64, 0x6f, 0x6f }, AmfString("doo").serialize(ctx)); isEqual(v8 { 0x0b, 0x07, 0x64, 0x6f, 0x6f }, AmfXml("doo").serialize(ctx)); }
TEST(DeserializerTest, XmlDoc) { deserializesTo(AmfXmlDocument(""), { 0x07, 0x01 }); deserializesTo(AmfXmlDocument(""), { 0x07, 0x01, 0x07 }, 1); deserializesTo(AmfXmlDocument("foo"), { 0x07, 0x07, 0x66, 0x6f, 0x6f }); }