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

Unified Diff: third_party/protobuf/src/google/protobuf/compiler/js/well_known_types/any.js

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years 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: third_party/protobuf/src/google/protobuf/compiler/js/well_known_types/any.js
diff --git a/third_party/protobuf/java/core/src/test/java/com/google/protobuf/ByteBufferWriterTest.java b/third_party/protobuf/src/google/protobuf/compiler/js/well_known_types/any.js
similarity index 52%
copy from third_party/protobuf/java/core/src/test/java/com/google/protobuf/ByteBufferWriterTest.java
copy to third_party/protobuf/src/google/protobuf/compiler/js/well_known_types/any.js
index cbe742e5b91f3b5822de7d189d7953d768af4a22..22f18919bc845817ce20bba3eaf433e78cf43756 100644
--- a/third_party/protobuf/java/core/src/test/java/com/google/protobuf/ByteBufferWriterTest.java
+++ b/third_party/protobuf/src/google/protobuf/compiler/js/well_known_types/any.js
@@ -28,54 +28,53 @@
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-package com.google.protobuf;
+/* This code will be inserted into generated code for
+ * google/protobuf/any.proto. */
-import junit.framework.TestCase;
+/**
+ * Returns the type name contained in this instance, if any.
+ * @return {string|undefined}
+ */
+proto.google.protobuf.Any.prototype.getTypeName = function() {
+ return this.getTypeUrl().split('/').pop();
+};
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.nio.ByteBuffer;
-import java.util.Arrays;
-import java.util.Random;
/**
- * Tests for {@link ByteBufferWriter}.
+ * Packs the given message instance into this Any.
+ * @param {!Uint8Array} serialized The serialized data to pack.
+ * @param {string} name The type name of this message object.
+ * @param {string=} opt_typeUrlPrefix the type URL prefix.
*/
-public class ByteBufferWriterTest extends TestCase {
-
- public void testHeapBuffer() throws IOException {
- // Test a small and large buffer.
- testWrite(ByteBuffer.allocate(100));
- testWrite(ByteBuffer.allocate(1024 * 100));
+proto.google.protobuf.Any.prototype.pack = function(serialized, name,
+ opt_typeUrlPrefix) {
+ if (!opt_typeUrlPrefix) {
+ opt_typeUrlPrefix = 'type.googleapis.com/';
}
- public void testDirectBuffer() throws IOException {
- // Test a small and large buffer.
- testWrite(ByteBuffer.allocateDirect(100));
- testWrite(ByteBuffer.allocateDirect(1024 * 100));
+ if (opt_typeUrlPrefix.substr(-1) != '/') {
+ this.setTypeUrl(opt_typeUrlPrefix + '/' + name);
+ } else {
+ this.setTypeUrl(opt_typeUrlPrefix + name);
}
- private void testWrite(ByteBuffer buffer) throws IOException {
- fillRandom(buffer);
- ByteArrayOutputStream os = new ByteArrayOutputStream(buffer.remaining());
- ByteBufferWriter.write(buffer, os);
- assertEquals(0, buffer.position());
- assertTrue(Arrays.equals(toArray(buffer), os.toByteArray()));
- }
+ this.setValue(serialized);
+};
- private void fillRandom(ByteBuffer buf) {
- byte[] bytes = new byte[buf.remaining()];
- new Random().nextBytes(bytes);
- buf.put(bytes);
- buf.flip();
- return;
- }
- private byte[] toArray(ByteBuffer buf) {
- int originalPosition = buf.position();
- byte[] bytes = new byte[buf.remaining()];
- buf.get(bytes);
- buf.position(originalPosition);
- return bytes;
+/**
+ * @template T
+ * Unpacks this Any into the given message object.
+ * @param {function(Uint8Array):T} deserialize Function that will deserialize
+ * the binary data properly.
+ * @param {string} name The expected type name of this message object.
+ * @return {?T} If the name matched the expected name, returns the deserialized
+ * object, otherwise returns undefined.
+ */
+proto.google.protobuf.Any.prototype.unpack = function(deserialize, name) {
+ if (this.getTypeName() == name) {
+ return deserialize(this.getValue_asU8());
+ } else {
+ return null;
}
-}
+};

Powered by Google App Engine
This is Rietveld 408576698