76 |
76 |
}
|
77 |
77 |
|
78 |
78 |
@Test
|
|
79 |
public void testDeSerializeBinaryAttachment() throws ConversionException, SyntaxException {
|
|
80 |
String xml1 = "<?xml version=\"1.0\"?>" + "<node1 attr1=\"val1\">"
|
|
81 |
+ " <node2 attr2=\"val2\"/>" + " <node3 attr3=\"val3\"/>"
|
|
82 |
+ "</node1>";
|
|
83 |
long id = 156546546;
|
|
84 |
XOP xop1 = new XOP(xml1, id);
|
|
85 |
|
|
86 |
// create data
|
|
87 |
float[] floatData = {0.0f,1.0f,2.0f};
|
|
88 |
ByteBuffer bb = ByteBuffer.allocate(4 * floatData.length);
|
|
89 |
for (int i = 0; i < floatData.length; i++) {
|
|
90 |
bb.putFloat(floatData[i]);
|
|
91 |
}
|
|
92 |
|
|
93 |
rsb.transport.Attachment a1 = new rsb.transport.Attachment(bb, ByteBuffer.class);
|
|
94 |
xop1.setAttachment("attachment", a1);
|
|
95 |
|
|
96 |
WireContents<ByteBuffer> serializedData = converter.serialize(XOP.class, xop1);
|
|
97 |
|
|
98 |
UserData<rst.xml.XOPType.XOP> deserializedUserData =
|
|
99 |
converter.deserialize(
|
|
100 |
serializedData.getWireSchema(),
|
|
101 |
serializedData.getSerialization());
|
|
102 |
|
|
103 |
assertTrue(deserializedUserData.getTypeInfo().equals(xop1.getClass()));
|
|
104 |
|
|
105 |
XOP deserializedXOP = (XOP) deserializedUserData.getData();
|
|
106 |
assertTrue(deserializedXOP.getID() == xop1.getID());
|
|
107 |
assertTrue(deserializedXOP.getID() != 156546545);
|
|
108 |
assertTrue(deserializedXOP.hasID());
|
|
109 |
|
|
110 |
assertTrue(deserializedXOP.hasAttachment("attachment"));
|
|
111 |
rsb.transport.Attachment a2 = deserializedXOP.getAttachment("attachment");
|
|
112 |
|
|
113 |
ByteBuffer a1bb = (ByteBuffer) a1.getData();
|
|
114 |
ByteBuffer a2bb = (ByteBuffer) a2.getData();
|
|
115 |
assertTrue(a1bb.equals(a2bb));
|
|
116 |
|
|
117 |
assertTrue(a1.equals(a2));
|
|
118 |
assertTrue(deserializedXOP.equals(xop1));
|
|
119 |
}
|
|
120 |
|
|
121 |
@Test
|
79 |
122 |
public void testDeSerializeUint64() throws ConversionException, SyntaxException {
|
80 |
123 |
String xml1 = "<?xml version=\"1.0\"?>" + "<node1 attr1=\"val1\">"
|
81 |
124 |
+ " <node2 attr2=\"val2\"/>" + " <node3 attr3=\"val3\"/>"
|
82 |
|
-
|