@Subscribe
    public synchronized void completeToReportLocalProcesses(final ReportLocalProcessesCompletedEvent event) {
        ProcessOperationLockRegistry.getInstance().notify(event.getTaskId());
    }
@Test
    void assertCompleteToReportLocalProcesses() {
        String taskId = "foo_id";
        long startMillis = System.currentTimeMillis();
        Executors.newFixedThreadPool(1).submit(() -> {
            Awaitility.await().pollDelay(50L, TimeUnit.MILLISECONDS).until(() -> true);
            subscriber.completeToReportLocalProcesses(new ReportLocalProcessesCompletedEvent(taskId));
        });
        waitUntilReleaseReady(taskId);
        long currentMillis = System.currentTimeMillis();
        assertThat(currentMillis, greaterThanOrEqualTo(startMillis + 50L));
        assertThat(currentMillis, lessThanOrEqualTo(startMillis + 5000L));
    }