     assert ref1 < ref2
   end
 
-  test "push references are not reset after leave/rejoin" do
+  test "push references are monotonically increasing after leave/rejoin" do
     conn = join_channel()
     {:ok, ref1} = TestSocket.push(conn.socket, "channel:1", "event1")
     {:ok, %{}} = TestSocket.leave(conn.socket, "channel:1")

    assert ref1 < ref2
  end

  test "push references on multiple channels" do
    conn = join_channel()
    {:ok, _} = TestSocket.join(conn.socket, "channel:2")
    {:ok, ref1} = TestSocket.push(conn.socket, "channel:1", "event1")

    assert_receive {TestSite.Channel, {:terminate, {:shutdown, :left}}}
  end

  test "push references are monotonically increasing on the same channel" do
    conn = join_channel()
    {:ok, ref1} = TestSocket.push(conn.socket, "channel:1", "event1")
    {:ok, ref2} = TestSocket.push(conn.socket, "channel:1", "event2")
