### Question:
ConnectionExternalResourceStepAnalyzer extends ExternalResourceStepAnalyzer<T> { @Override protected void customAnalyze( T meta, IMetaverseNode node ) throws MetaverseAnalyzerException { super.customAnalyze( meta, node ); IMetaverseNode connectionNode = getConnectionNode(); getMetaverseBuilder().addNode( connectionNode ); getMetaverseBuilder().addLink( connectionNode, DictionaryConst.LINK_DEPENDENCYOF, node ); }  @Override IMetaverseNode createResourceNode( IExternalResourceInfo resource ); IMetaverseNode getConnectionNode(); IMetaverseNode getTableNode(); void linkResourceToFields( StepNodes stepNodes );  }### Answer:
@Test public void testCustomAnalyze_nullERC() throws Exception { IMetaverseNode connectionNode = mock( IMetaverseNode.class ); IConnectionAnalyzer connectionAnalyzer = mock( IConnectionAnalyzer.class ); doReturn( connectionAnalyzer ).when( analyzer ).getConnectionAnalyzer(); when( connectionAnalyzer.analyze( descriptor, meta ) ).thenReturn( connectionNode ); analyzer.setExternalResourceConsumer( null ); analyzer.customAnalyze( meta, node ); verify( builder, never() ).addNode( resourceNode ); verify( builder, never() ).addLink( node, DictionaryConst.LINK_READBY, resourceNode ); }