Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1802)

Unified Diff: mojo/android/javatests/src/org/chromium/mojo/bindings/test/mojom/sample/InterfaceInternalTest.java

Issue 364063006: JAVA BINDINGS WIP. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/android/javatests/src/org/chromium/mojo/bindings/test/mojom/sample/InterfaceInternalTest.java
diff --git a/mojo/android/javatests/src/org/chromium/mojo/bindings/test/mojom/sample/InterfaceInternalTest.java b/mojo/android/javatests/src/org/chromium/mojo/bindings/test/mojom/sample/InterfaceInternalTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..a45d3789364796032ff01a979a3a76837be37dc6
--- /dev/null
+++ b/mojo/android/javatests/src/org/chromium/mojo/bindings/test/mojom/sample/InterfaceInternalTest.java
@@ -0,0 +1,48 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+package org.chromium.mojo.bindings.test.mojom.sample;
+
+import android.test.InstrumentationTestCase;
+import android.test.suitebuilder.annotation.SmallTest;
+
+import org.chromium.mojo.bindings.Message;
+import org.chromium.mojo.bindings.MessageHeader;
+import org.chromium.mojo.bindings.test.mojom.sample.ProviderInternal.ProviderEchoStringsParams;
+
+/**
+ * Testing internal classes of interfaces.
+ */
+public class InterfaceInternalTest extends InstrumentationTestCase {
+
+ /**
+ * Testing that a message is identical to itself after being serialized then deserialized.
+ */
+ @SmallTest
+ public void testProviderEchoStringsParams() {
+ final String aString = "Hello world";
+ final String bString = "bye world";
+ final int type = 6;
+ final long requestId = 0x1deadbeafL;
+ ProviderEchoStringsParams p = new ProviderEchoStringsParams();
+ p.a = aString;
+ p.b = bString;
+ assertEquals(aString, p.a);
+ assertEquals(bString, p.b);
+ Message serialization = p.serializeWithHeader(null,
+ new MessageHeader(type, MessageHeader.MESSAGE_EXPECTS_RESPONSE_FLAG, 0));
+ MessageHeader.setRequestId(serialization, requestId);
+ MessageHeader header = new MessageHeader(serialization);
+ assertTrue(header.validateHeader(type, MessageHeader.MESSAGE_EXPECTS_RESPONSE_FLAG));
+ assertEquals(type, header.getType());
+ assertEquals(MessageHeader.MESSAGE_EXPECTS_RESPONSE_FLAG, header.getFlags());
+ assertEquals(requestId, header.getRequestId());
+ ProviderEchoStringsParams p2 = ProviderEchoStringsParams.deserialize(
+ serialization.truncateHead(header.getSize()));
+ assertNotNull(p2);
+ assertEquals(p.a, p2.a);
+ assertEquals(p.b, p2.b);
+ }
+
+}

Powered by Google App Engine
This is Rietveld 408576698