| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | /** * @fileoverview Test data for float encoding and decoding. */goog.module('protobuf.binary.floatTestPairs');const BufferDecoder = goog.require('protobuf.binary.BufferDecoder');const {createBufferDecoder} = goog.require('protobuf.binary.bufferDecoderHelper');/** * An array of Pairs of float values and their bit representation. * This is used to test encoding and decoding from/to the protobuf wire format. * @return {!Array<{name: string, floatValue:number, bufferDecoder: *     !BufferDecoder}>} */function getFloatPairs() {  const floatPairs = [    {      name: 'zero',      floatValue: 0,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x00, 0x00),    },    {      name: 'minus zero',      floatValue: -0,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x00, 0x80)    },    {      name: 'one ',      floatValue: 1,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x80, 0x3F)    },    {      name: 'minus one',      floatValue: -1,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x80, 0xBF)    },    {      name: 'two',      floatValue: 2,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x00, 0x40)    },    {      name: 'max float32',      floatValue: Math.pow(2, 127) * (2 - 1 / Math.pow(2, 23)),      bufferDecoder: createBufferDecoder(0xFF, 0xFF, 0x7F, 0x7F)    },    {      name: 'min float32',      floatValue: 1 / Math.pow(2, 127 - 1),      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x80, 0x00)    },    {      name: 'Infinity',      floatValue: Infinity,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x80, 0x7F)    },    {      name: 'minus Infinity',      floatValue: -Infinity,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0x80, 0xFF)    },    {      name: '1.5',      floatValue: 1.5,      bufferDecoder: createBufferDecoder(0x00, 0x00, 0xC0, 0x3F)    },    {      name: '1.6',      floatValue: 1.6,      bufferDecoder: createBufferDecoder(0xCD, 0xCC, 0xCC, 0x3F)    },  ];  return [...floatPairs];}exports = {getFloatPairs};
 |