@Test(dataProvider = "VCFWriterDoubleFormatTestData") public void testVCFWriterDoubleFormatTestData(final double d, final String expected) { Assert.assertEquals(VCFEncoder.formatVCFDouble(d), expected, "Failed to pretty print double in VCFWriter"); }
@SuppressWarnings("rawtypes") String formatVCFField(final Object val) { final String result; if ( val == null ) result = VCFConstants.MISSING_VALUE_v4; else if ( val instanceof Double ) result = formatVCFDouble((Double) val); else if ( val instanceof Boolean ) result = (Boolean)val ? "" : null; // empty string for true, null for false else if ( val instanceof List ) { result = formatVCFField(((List)val).toArray()); } else if ( val.getClass().isArray() ) { final int length = Array.getLength(val); if ( length == 0 ) return formatVCFField(null); final StringBuilder sb = new StringBuilder(formatVCFField(Array.get(val, 0))); for ( int i = 1; i < length; i++) { sb.append(','); sb.append(formatVCFField(Array.get(val, i))); } result = sb.toString(); } else result = val.toString(); return result; }
String formatVCFField(final Object val) { final String result; if ( val == null ) result = VCFConstants.MISSING_VALUE_v4; else if ( val instanceof Double ) result = formatVCFDouble((Double) val); else if ( val instanceof Boolean ) result = (Boolean)val ? "" : null; // empty string for true, null for false else if ( val instanceof List ) { result = formatVCFField(((List)val).toArray()); } else if ( val.getClass().isArray() ) { final int length = Array.getLength(val); if ( length == 0 ) return formatVCFField(null); final StringBuilder sb = new StringBuilder(formatVCFField(Array.get(val, 0))); for ( int i = 1; i < length; i++) { sb.append(","); sb.append(formatVCFField(Array.get(val, i))); } result = sb.toString(); } else result = val.toString(); return result; }
@SuppressWarnings("rawtypes") String formatVCFField(final Object val) { final String result; if ( val == null ) result = VCFConstants.MISSING_VALUE_v4; else if ( val instanceof Double ) result = formatVCFDouble((Double) val); else if ( val instanceof Boolean ) result = (Boolean)val ? "" : null; // empty string for true, null for false else if ( val instanceof List ) { result = formatVCFField(((List)val).toArray()); } else if ( val.getClass().isArray() ) { final int length = Array.getLength(val); if ( length == 0 ) return formatVCFField(null); final StringBuilder sb = new StringBuilder(formatVCFField(Array.get(val, 0))); for ( int i = 1; i < length; i++) { sb.append(','); sb.append(formatVCFField(Array.get(val, i))); } result = sb.toString(); } else result = val.toString(); return result; }