@Test
public void testCreateExecution() throws FlyteRunner.CreateExecutionException {

  final var execName = "test-create-execution";
  when(flyteAdminClient.createExecution(any(), any(), any(), any(), any(), any(), any())).thenReturn(
      ExecutionOuterClass.ExecutionCreateResponse
          .newBuilder()
          .setId(IdentifierOuterClass.WorkflowExecutionIdentifier
              .newBuilder()
              .setProject(LAUNCH_PLAN_IDENTIFIER.project())
              .setDomain(LAUNCH_PLAN_IDENTIFIER.domain())
              .setName(execName)
              .build())
          .build());
  var runnerId = flyteRunner.createExecution(RUN_STATE, execName, FLYTE_EXEC_CONF, ANNOTATIONS);
  assertThat(runnerId, is(RUNNER_ID));
  verify(flyteAdminClient).createExecution(
      LAUNCH_PLAN_IDENTIFIER.project(), LAUNCH_PLAN_IDENTIFIER.domain(), execName,
      toProto(LAUNCH_PLAN_IDENTIFIER), SCHEDULED, ANNOTATIONS, RUN_STATE.workflowInstance().parameter());
}