Buffer write* silently sets 0 instead of failing for wrong values
Repro:
> var b = new Buffer(6);
undefined
> b.writeUInt32LE(10, 0);
4
> b.readUInt32LE(0)
10
> b.writeUInt32LE("5", 0);
4
> b.readUInt32LE(0)
5
> b.writeUInt32LE({}, 0);
4
> b.readUInt32LE(0)
0
> b.writeUInt32LE({}, 0, false);
4
> b.readUInt32LE(0)
0
According to this: https://iojs.org/api/buffer.html#buffer_buf_writeint32le_value_offset_noassert, the last three writes should be failed, because value is not a valid integer.