@Override
    public CompletableFuture<JobManagerRunnerResult> getResultFuture() {
        return resultFuture;
    }
@Test
    void testInitializationFailureSetsFailureInfoProperly()
            throws ExecutionException, InterruptedException {
        final CompletableFuture<JobMasterService> jobMasterServiceFuture =
                new CompletableFuture<>();
        DefaultJobMasterServiceProcess serviceProcess = createTestInstance(jobMasterServiceFuture);
        final RuntimeException originalCause = new RuntimeException("Expected RuntimeException");

        long beforeFailureTimestamp = System.currentTimeMillis();
        jobMasterServiceFuture.completeExceptionally(originalCause);
        long afterFailureTimestamp = System.currentTimeMillis();

        final JobManagerRunnerResult result = serviceProcess.getResultFuture().get();
        final ErrorInfo executionGraphFailure =
                result.getExecutionGraphInfo().getArchivedExecutionGraph().getFailureInfo();

        assertThat(executionGraphFailure).isNotNull();
        assertInitializationException(
                executionGraphFailure.getException(),
                originalCause,
                executionGraphFailure.getTimestamp(),
                beforeFailureTimestamp,
                afterFailureTimestamp);
    }