### Question:
AsyncGradientsNeuralNetUpdater extends BaseAsyncNeuralNetUpdater<Gradients> { @Override public void update(Gradients gradients) { updateAndSync(gradients); } AsyncGradientsNeuralNetUpdater(ITrainableNeuralNet threadCurrent,
                                          AsyncSharedNetworksUpdateHandler sharedNetworksUpdateHandler); @Override void update(Gradients gradients);  }### Answer:
@Test public void when_callingUpdate_expect_handlerCalledAndThreadCurrentUpdated() { NeuralNetUpdaterConfiguration configuration = NeuralNetUpdaterConfiguration.builder() .targetUpdateFrequency(2) .build(); AsyncGradientsNeuralNetUpdater sut = new AsyncGradientsNeuralNetUpdater(threadCurrentMock, asyncSharedNetworksUpdateHandlerMock); Gradients gradients = new Gradients(10); sut.update(gradients); verify(asyncSharedNetworksUpdateHandlerMock, times(1)).handleGradients(gradients); verify(threadCurrentMock, never()).copyFrom(globalCurrentMock); }