### Question:
ComputationGraphHandler implements INetworkHandler { @Override public void copyFrom(INetworkHandler from) { model.setParams(((ComputationGraphHandler) from).model.params()); } ComputationGraphHandler(ComputationGraph model, String[] labelNames, String gradientName); @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_modelParamsAreCopiedToModel() { setup(false); INDArray params = Nd4j.rand(1, 2); when(modelMock.params()).thenReturn(params); ComputationGraphHandler from = new ComputationGraphHandler(modelMock, null, null); sut.copyFrom(from); verify(modelMock, times(1)).setParams(params); }