TEST(minijson_writer, invalid_floats) { std::stringstream stream; minijson::object_writer writer(stream); writer.write("posinfinity", 1.0 / return_zero()); writer.write("neginfinity", -1.0 / return_zero()); writer.write("nan", 0.0 / return_zero()); writer.close(); ASSERT_EQ("{\"posinfinity\":null,\"neginfinity\":null,\"nan\":null}", stream.str()); }
/* ----------------------------- MNI Header ----------------------------------- @NAME : acr_get_numeric_vr @INPUT : vr_code - the internal VR code byte_order - ACR_BIG_ENDIAN or ACR_LITTLE_ENDIAN data - the data to convert data_length - the length of the data @OUTPUT : (none) @RETURNS : The converted value. @DESCRIPTION: Convert a value to a number according to its VR. @METHOD : @GLOBALS : @CALLS : @CREATED : January 31, 1997 (Peter Neelin) @MODIFIED : ---------------------------------------------------------------------------- */ double acr_get_numeric_vr(Acr_VR_Type vr_code, Acr_byte_order byte_order, char *data, long data_length) { Acr_VR_Entry *entry; if ((entry = get_vr_entry(vr_code)) == NULL) { return return_zero(entry, byte_order, data, data_length); } return entry->convert_to_numeric(entry, byte_order, data, data_length); }