### Question:
SessionKeepAliveTask implements Runnable { @Override public void run() { userClient.login(new StreamObserver<Login>() { @Override public void onNext(Login login) { LOG.info("Session token of user {} successfully updated.", login.getAccount().getUsername()); } @Override public void onCompleted() { } @Override public <E extends MatchbookSDKException> void onError(E exception) { LOG.warn("Fail to update session token.", exception); } }); } SessionKeepAliveTask(UserClient userClient); @Override void run();  }### Answer:
@SuppressWarnings("unchecked") @Test @DisplayName("Run session keep alive task") void runTest() { unit.run(); verify(userClient).login(any(StreamObserver.class)); }