public boolean init( StepMetaInterface smi, StepDataInterface sdi ) {
    meta = (ScriptMeta) smi;
    data = (ScriptData) sdi;

    if ( super.init( smi, sdi ) ) {

      // Add init code here.
      // Get the actual Scripts from our MetaData
      jsScripts = meta.getJSScripts();
      for ( int j = 0; j < jsScripts.length; j++ ) {
        switch ( jsScripts[ j ].getScriptType() ) {
          case ScriptValuesScript.TRANSFORM_SCRIPT:
            strTransformScript = jsScripts[ j ].getScript();
            break;
          case ScriptValuesScript.START_SCRIPT:
            strStartScript = jsScripts[ j ].getScript();
            break;
          case ScriptValuesScript.END_SCRIPT:
            strEndScript = jsScripts[ j ].getScript();
            break;
          default:
            break;
        }
      }
      return true;
    }
    return false;
  }
@Test
  public void testOutputDoneIfInputEmpty() throws Exception {
    Script step = new Script( helper.stepMeta, helper.stepDataInterface, 1, helper.transMeta, helper.trans );
    step.init( helper.initStepMetaInterface, helper.initStepDataInterface );

    RowSet rs = helper.getMockInputRowSet( new Object[ 0 ][ 0 ] );
    List<RowSet> in = new ArrayList<RowSet>();
    in.add( rs );
    step.setInputRowSets( in );

    TransTestingUtil.execute( step, helper.processRowsStepMetaInterface, helper.processRowsStepDataInterface, 0, true );
    rs.getRow();
  }