### Question:
TableInputStepAnalyzer extends ConnectionExternalResourceStepAnalyzer<TableInputMeta> { @Override public IMetaverseNode getConnectionNode() throws MetaverseAnalyzerException { connectionNode = (IMetaverseNode) getConnectionAnalyzer().analyze( getDescriptor(), baseStepMeta.getDatabaseMeta() ); return connectionNode; }  @Override Set<Class<? extends BaseStepMeta>> getSupportedSteps(); @Override String getResourceInputNodeType(); @Override String getResourceOutputNodeType(); @Override boolean isOutput(); @Override boolean isInput(); @Override IMetaverseNode getConnectionNode(); void setBaseStepMeta( TableInputMeta meta ); @Override String toString();  }### Answer:
@Test public void testGetConnectionNode() throws Exception { DatabaseConnectionAnalyzer dbAnalyzer = mock( DatabaseConnectionAnalyzer.class ); when( meta.getDatabaseMeta() ).thenReturn( dbMeta ); when( dbAnalyzer.analyze( descriptor, dbMeta ) ).thenReturn( connectionNode ); doReturn( dbAnalyzer ).when( analyzer ).getConnectionAnalyzer(); IMetaverseNode node = analyzer.getConnectionNode(); verify( analyzer ).getConnectionAnalyzer(); verify( dbAnalyzer ).analyze( descriptor, dbMeta ); assertEquals( node, connectionNode ); }