123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /*eslint-disable no-console*/
- "use strict";
- var protobuf = require("../../"),
- descriptor = require(".");
-
- /* var proto = {
- nested: {
- Message: {
- fields: {
- foo: {
- type: "string",
- id: 1
- }
- },
- nested: {
- SubMessage: {
- fields: {}
- }
- }
- },
- Enum: {
- values: {
- ONE: 1,
- TWO: 2
- }
- }
- }
- }; */
-
- // var root = protobuf.Root.fromJSON(proto).resolveAll();
- var root = protobuf.loadSync("tests/data/google/protobuf/descriptor.proto").resolveAll();
-
- // console.log("Original proto", JSON.stringify(root, null, 2));
-
- var msg = root.toDescriptor();
-
- // console.log("\nDescriptor", JSON.stringify(msg.toObject(), null, 2));
-
- var buf = descriptor.FileDescriptorSet.encode(msg).finish();
- var root2 = protobuf.Root.fromDescriptor(buf, "proto2").resolveAll();
-
- // console.log("\nDecoded proto", JSON.stringify(root2, null, 2));
-
- var diff = require("deep-diff").diff(root.toJSON(), root2.toJSON());
- if (diff) {
- diff.forEach(function(diff) {
- console.log(diff.kind + " @ " + diff.path.join("."));
- console.log("lhs:", typeof diff.lhs, diff.lhs);
- console.log("rhs:", typeof diff.rhs, diff.rhs);
- console.log();
- });
- process.exitCode = 1;
- } else
- console.log("no differences");
|