     Logger.info "Start the Baumeister Application"
     :ok= Application.ensure_started(:baumeister)
     Utils.wait_for fn -> nil != Process.whereis(Baumeister.ObserverSupervisor) end
+
+    Logger.info "Start a worker"
+    {:ok, worker} = Worker.start_link()
+    Logger.info "Worker process is #{inspect worker}"
 
     # Drain the event queue of old events.
     Logger.info "Clear the event center"

  alias Baumeister.Observer.FailPlugin
  alias Baumeister.Observer.NoopPlugin
  alias Baumeister.Observer.Take
  alias Baumeister.Test.GitRepos
  alias Baumeister.EventCenter
  alias Baumeister.Test.TestListener
  alias Baumeister.Test.Utils
  alias Experimental.GenStage

  require Logger

    # for our current listener for `project`
    Utils.wait_for fn -> listener
      |> TestListener.get()
      # |> Enum.any?(fn {_, a, _} -> a == :stopped_observer end)
      |> Enum.filter(fn {w, _a, _} -> w == :worker end)
      |> Enum.count()
      >= 3
    end
    {testl, rubbish} = listener
    |> TestListener.get()
