   @tag timeout: 120_000
   property "run many worker executions", [:verbose] do
     {:ok, worker} = Worker.start_link()
+    wait_for_worker()
     Logger.debug "Worker is started"
     # use size to achieve smaller lists
     forall delays <- vector(10, float(0.0,0.1))  do

    NoopPlugin.make_coordinate(tmp_dir)
  end

  @tag timeout: 1_000
  test "Start a worker", _env do
    {:ok, worker} = Worker.start_link()
    Logger.debug "Worker is started"
    assert is_pid(worker)
    assert Process.alive?(worker)
    all_workers = Coordinator.all_workers()
    Logger.debug "all workers: #{inspect all_workers}"
    assert Enum.any?(all_workers, fn(w) -> w.pid == worker end)
    Process.exit(worker, :normal)
    remaining_workers = Coordinator.all_workers()
    assert not Enum.member?(remaining_workers, worker)
  end

    {bmf, _local_os} = Utils.create_parsed_bmf("echo Hallo")
    coord = make_tmp_coordinate()
    {:ok, listener} = TestListener.start()
    GenStage.sync_subscribe(listener, to: EventCenter.name())
    {:ok, _worker} = Worker.start_link()
    wait_for_worker()
    Logger.debug "Worker is started"

    {:ok, _ref} = Coordinator.add_job(coord, bmf)
    ################
    #
    # Why is the event sent to the coordinator? Only
