### Question:
CalculatorData extends BaseTransformData implements ITransformData { public IValueMeta getValueMetaFor( int resultType, String name ) throws HopPluginException { IValueMeta meta = resultMetaMapping.get( resultType ); if ( meta == null ) { meta = ValueMetaFactory.createValueMeta( name, resultType ); resultMetaMapping.put( resultType, meta ); } return meta; } CalculatorData(); IRowMeta getOutputRowMeta(); void setOutputRowMeta( IRowMeta outputRowMeta ); IRowMeta getCalcRowMeta(); void setCalcRowMeta( IRowMeta calcRowMeta ); Calculator.FieldIndexes[] getFieldIndexes(); void setFieldIndexes( Calculator.FieldIndexes[] fieldIndexes ); int[] getTempIndexes(); void setTempIndexes( int[] tempIndexes ); IValueMeta getValueMetaFor( int resultType, String name ); void clearValuesMetaMapping();  }### Answer:
@Test public void dataReturnsCachedValues() throws Exception { HopEnvironment.init(); CalculatorData data = new CalculatorData(); IValueMeta valueMeta = data.getValueMetaFor( IValueMeta.TYPE_INTEGER, null ); IValueMeta shouldBeTheSame = data.getValueMetaFor( IValueMeta.TYPE_INTEGER, null ); assertTrue( "CalculatorData should cache loaded value meta instances", valueMeta == shouldBeTheSame ); }