private Trans createTrans() { Trans trans = new Trans(); trans.setLog( mock( LogChannelInterface.class ) ); trans = spy( trans ); return trans; }
@Before public void setUp() throws Exception { executor = StepMockUtil.getStep( TransExecutor.class, TransExecutorMeta.class, "TransExecutorUnitTest" ); executor = spy( executor ); TransMeta internalTransMeta = mock( TransMeta.class ); doReturn( internalTransMeta ).when( executor ).loadExecutorTransMeta(); internalTrans = spy( new Trans() ); internalTrans.setLog( mock( LogChannelInterface.class ) ); doNothing().when( internalTrans ).prepareExecution( any( String[].class ) ); doNothing().when( internalTrans ).startThreads(); doNothing().when( internalTrans ).waitUntilFinished(); doNothing().when( executor ).discardLogLines( any( TransExecutorData.class ) ); doReturn( internalTrans ).when( executor ).createInternalTrans(); internalResult = new Result(); doReturn( internalResult ).when( internalTrans ).getResult(); meta = new TransExecutorMeta(); data = new TransExecutorData(); }
@Before public void beforeTest() throws KettleException { meta = new TransMeta(); trans = new Trans( meta ); trans.setLog( Mockito.mock( LogChannelInterface.class ) ); trans.prepareExecution( null ); trans.startThreads(); }
trans.setLog( log ); trans.setTransMeta( meta );
/** * Initialize step info. Method is final against redefine in descendants. */ @Before public final void beforeCommon() throws Exception { KettleEnvironment.init(); PluginRegistry.addPluginType( CompressionPluginType.getInstance() ); PluginRegistry.init( false ); stepMeta = new StepMeta(); stepMeta.setName( "test" ); trans = new Trans(); trans.setLog( log ); trans.setRunning( true ); transMeta = new TransMeta() { @Override public StepMeta findStep( String name ) { return stepMeta; } }; fs = VFS.getManager(); inPrefix = '/' + this.getClass().getPackage().getName().replace( '.', '/' ) + "/files/"; }
@Test public void testInit() { StepMetaInterface stepMetaInterface = new AbstractStepMeta() { @Override public void setDefault() { } @Override public StepInterface getStep( StepMeta stepMeta, StepDataInterface stepDataInterface, int copyNr, TransMeta transMeta, Trans trans ) { return null; } }; StepMeta stepMeta = new StepMeta(); stepMeta.setName( "TestMetaStep" ); StepDataInterface stepDataInterface = mock( StepDataInterface.class ); Trans trans = new Trans(); LogChannel log = mock( LogChannel.class ); doAnswer( new Answer<Void>() { public Void answer( InvocationOnMock invocation ) { return null; } } ).when( log ).logError( anyString() ); trans.setLog( log ); TransMeta transMeta = new TransMeta(); transMeta.addStep( stepMeta ); MissingTransStep step = createAndInitStep( stepMetaInterface, stepDataInterface ); assertFalse( step.init( stepMetaInterface, stepDataInterface ) ); }
private JoinRows getJoinRows() throws Exception { StepMeta stepMeta = new StepMeta(); TransMeta transMeta = new TransMeta(); Trans trans = new Trans( transMeta ); transMeta.clear(); transMeta.addStep( stepMeta ); transMeta.setStep( 0, stepMeta ); stepMeta.setName( "test" ); trans.setLog( mock( LogChannelInterface.class ) ); trans.prepareExecution( null ); trans.startThreads(); return new JoinRows( stepMeta, null, 0, transMeta, trans ); }
@Test //PDI-16066 public void testExecuteTrans() throws KettleException { String childParam = "childParam"; String childValue = "childValue"; String paramOverwrite = "paramOverwrite"; String parentValue = "parentValue"; meta.getParameters().setVariable( new String[]{ childParam, paramOverwrite } ); meta.getParameters().setInput( new String[]{ childValue, childValue } ); Trans parent = new Trans(); Mockito.when( executor.getTrans() ).thenReturn( parent ); executor.init( meta, data ); executor.setVariable( paramOverwrite, parentValue ); executor.setVariable( childParam, childValue ); Mockito.when( executor.getLogLevel() ).thenReturn( LogLevel.NOTHING ); parent.setLog( new LogChannel( this ) ); Mockito.doCallRealMethod().when( executor ).createInternalTrans( ); Mockito.when( executor.getData().getExecutorTransMeta().listVariables() ).thenReturn( new String[0] ); Mockito.when( executor.getData().getExecutorTransMeta().listParameters() ).thenReturn( new String[0] /*{parentParam}*/ ); Trans internalTrans = executor.createInternalTrans(); executor.getData().setExecutorTrans( internalTrans ); executor.passParametersToTrans( Arrays.asList( meta.getParameters().getInput() ) ); //When the child parameter does exist in the parent parameters, overwrite the child parameter by the parent parameter. Assert.assertEquals( parentValue, internalTrans.getVariable( paramOverwrite ) ); //All other parent parameters need to get copied into the child parameters (when the 'Inherit all variables from the transformation?' option is checked) Assert.assertEquals( childValue, internalTrans.getVariable( childParam ) ); }