### Question:
CompoundNetworkHandler implements INetworkHandler { @Override public void copyFrom(INetworkHandler from) { for(int i = 0; i < networkHandlers.length; ++i) { networkHandlers[i].copyFrom(((CompoundNetworkHandler) from).networkHandlers[i]); } } CompoundNetworkHandler(INetworkHandler... networkHandlers); @Override void notifyGradientCalculation(); @Override void notifyIterationDone(); @Override void performFit(FeaturesLabels featuresLabels); @Override void performGradientsComputation(FeaturesLabels featuresLabels); @Override void fillGradientsResponse(Gradients gradients); @Override void applyGradient(Gradients gradients, long batchSize); @Override INDArray[] recurrentStepOutput(Observation observation); @Override INDArray[] batchOutput(INDArray batch); @Override void resetState(); @Override INetworkHandler clone(); @Override void copyFrom(INetworkHandler from);  }### Answer:
@Test public void when_callingCopyFrom_expect_handlersParamsAreCopied() { setup(false); CompoundNetworkHandler from = new CompoundNetworkHandler(handler1, handler2); sut.copyFrom(from); verify(handler1, times(1)).copyFrom(handler1); verify(handler2, times(1)).copyFrom(handler2); }