 
     wait_for fn -> length(TestListener.get(listener)) >= 3 end
 
-    l = TestListener.get(listener)
+    l = TestListener.get(listener) |> Enum.take(3)
     assert length(l) == 3
     assert [{_, :start_observer, _}, {_, :exec_observer, _},
         {_, :failed_observer, _}] = l


    wait_for fn -> length(TestListener.get(listener)) >= 3 end

    l = TestListener.get(listener)
    assert length(l) == 3
    assert [{_, :start_observer, _}, {_, :exec_observer, _}, {_, :stopped_observer, _}] = l
  end

  use ExUnit.Case

  require Logger
  @moduletag capture_log: true

  alias Baumeister.Test.TestListener
  alias Experimental.GenStage
