anchor.diff:           get_stanza_safe/2,
            get_stanza_safe/3,
            wait/2,
  +         wait_safely/2,
            wait_forever/1,
            receive_stanza/2,
            get_sm_h/1,
  
positive.code: get_stanza_safe(Client, Timeout, Pred) ->
      receive_stanza(Client, #{timeout => Timeout, with_metadata => true, safe => true, pred => Pred}).
  
  -spec wait(client(), timeout()) -> ok.
  wait(Client, Timeout) ->
      {error, timeout} = receive_stanza(Client, #{timeout => Timeout, pred => fun(_) -> false end}),
      ok.
  
  -spec wait_forever(client()) -> no_return().
  
negative.code:     Mod:assert_stream_end(StreamEndRep, Props).
  
  default_timeout() -> 5000.
  
  default_recv_opts(Timeout) ->
      #{timeout => Timeout, pred => fun(_) -> false end}.
  