blob: 7150e95cc9b7e5721fad756b62f34404430968da [file] [log] [blame]
var tape = require("tape");
var protobuf = require("..");
tape.test("empty inner fields", function(test) {
var root = protobuf.Root.fromJSON({
nested: {
Inner: {
fields: {
}
},
Outer: {
oneofs: {
child: {
oneof: ["inner"]
}
},
fields: {
inner: {
id: 1,
type: "Inner"
}
}
}
}
});
var Outer = root.lookup("Outer");
var msg = Outer.fromObject({
inner: {}
});
var buf = Outer.encode(msg).finish();
test.equal(buf.length, 2, "should always be present on the wire");
test.equal(buf[0], 1 << 3 | 2, "should write id 1, wireType 2");
test.equal(buf[1], 0, "should write a length of 0");
test.end();
});