@Test public void getSerializable_Test() throws Exception { ValueMetaSerializable v = new ValueMetaSerializable( "Data" ); RowMetaInterface row = mock( RowMetaInterface.class ); doReturn( v ).when( row ).searchValueMeta( anyString() ); doReturn( 0 ).when( row ).indexOfValue( anyString() ); assertEquals( "...", new FieldHelper( row, "Data" ).getSerializable( new Object[] { "..." } ) ); }
public ValueMetaAndData( String valueName, Object valueData ) throws KettleValueException { this.valueData = valueData; if ( valueData instanceof String ) { this.valueMeta = new ValueMetaString( valueName ); } else if ( valueData instanceof Double ) { this.valueMeta = new ValueMetaNumber( valueName ); } else if ( valueData instanceof Long ) { this.valueMeta = new ValueMetaInteger( valueName ); } else if ( valueData instanceof Date ) { this.valueMeta = new ValueMetaDate( valueName, ValueMetaInterface.TYPE_DATE ); } else if ( valueData instanceof BigDecimal ) { this.valueMeta = new ValueMetaBigNumber( valueName ); } else if ( valueData instanceof Boolean ) { this.valueMeta = new ValueMetaBoolean( valueName ); } else if ( valueData instanceof byte[] ) { this.valueMeta = new ValueMetaBinary( valueName ); } else { this.valueMeta = new ValueMetaSerializable( valueName ); } }
@Test public void getGetSignature_Serializable() throws Exception { LogChannel log = mock( LogChannel.class ); whenNew( LogChannel.class ).withAnyArguments().thenReturn( log ); ValueMetaSerializable v = new ValueMetaSerializable( "Data" ); String accessor = FieldHelper.getAccessor( true, "Data" ); assertEquals( "Object Data = get(Fields.In, \"Data\").getObject(r);", FieldHelper.getGetSignature( accessor, v ) ); assertNotNull( getMethod( FieldHelper.class, "getObject", Object[].class ) ); }
ValueMetaInterface valueMeta = new ValueMetaSerializable( "meta" ); valueMeta.setOrigin( origin ); rowMeta.addValueMeta( valueMeta ); valueMeta = new ValueMetaSerializable( "area" ); valueMeta.setOrigin( origin ); rowMeta.addValueMeta( valueMeta );
keyValue = ""; assertArrayEquals( new byte[] { -84, -19, 0, 5, 116, 0, 0 }, HBaseValueMeta.encodeColumnValue( keyValue, new ValueMetaSerializable(), hbMeta, BYTES_UTIL ) ); hbMeta.setType( 8 ); keyValue = new byte[] { 1 };