public ResourceID getResourceID() {
        return unresolvedTaskManagerLocation.getResourceID();
    }
@Test
    void testInitialSlotReport() throws Exception {
        final TaskExecutor taskExecutor = createTaskExecutor(1);

        taskExecutor.start();

        try {
            final TestingResourceManagerGateway testingResourceManagerGateway =
                    new TestingResourceManagerGateway();
            final CompletableFuture<ResourceID> initialSlotReportFuture = new CompletableFuture<>();

            testingResourceManagerGateway.setSendSlotReportFunction(
                    resourceIDInstanceIDSlotReportTuple3 -> {
                        initialSlotReportFuture.complete(resourceIDInstanceIDSlotReportTuple3.f0);
                        return CompletableFuture.completedFuture(Acknowledge.get());
                    });

            rpc.registerGateway(
                    testingResourceManagerGateway.getAddress(), testingResourceManagerGateway);
            resourceManagerLeaderRetriever.notifyListener(
                    testingResourceManagerGateway.getAddress(),
                    testingResourceManagerGateway.getFencingToken().toUUID());

            assertThatFuture(initialSlotReportFuture)
                    .eventuallySucceeds()
                    .isEqualTo(taskExecutor.getResourceID());
        } finally {
            RpcUtils.terminateRpcEndpoint(taskExecutor);
        }
    }