1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 package org.chromium.mojo.bindings;
7 import android.test.suitebuilder.annotation.SmallTest;
9 import junit.framework.TestCase;
11 import org.chromium.mojo.bindings.test.mojom.imported.Point;
14 * Testing internal classes of interfaces.
16 public class MessageHeaderTest extends TestCase {
19 * Testing that headers are identical after being serialized/deserialized.
22 public void testSimpleMessageHeader() {
26 Point p = new Point();
29 ServiceMessage message = p.serializeWithHeader(null, new MessageHeader(type));
31 MessageHeader header = message.getHeader();
32 assertTrue(header.validateHeader(type, 0));
33 assertEquals(type, header.getType());
34 assertEquals(0, header.getFlags());
36 Point p2 = Point.deserialize(message.getPayload());
38 assertEquals(p.x, p2.x);
39 assertEquals(p.y, p2.y);
43 * Testing that headers are identical after being serialized/deserialized.
46 public void testMessageWithRequestIdHeader() {
50 final long requestId = 0x1deadbeafL;
51 Point p = new Point();
54 ServiceMessage message = p.serializeWithHeader(null,
55 new MessageHeader(type, MessageHeader.MESSAGE_EXPECTS_RESPONSE_FLAG, 0));
56 message.setRequestId(requestId);
58 MessageHeader header = message.getHeader();
59 assertTrue(header.validateHeader(type, MessageHeader.MESSAGE_EXPECTS_RESPONSE_FLAG));
60 assertEquals(type, header.getType());
61 assertEquals(MessageHeader.MESSAGE_EXPECTS_RESPONSE_FLAG, header.getFlags());
62 assertEquals(requestId, header.getRequestId());
64 Point p2 = Point.deserialize(message.getPayload());
66 assertEquals(p.x, p2.x);
67 assertEquals(p.y, p2.y);