anchor.diff:                      Timeout -> ok
                   end
           end()).
  --define(expect_no_message(), ?expect_no_message(0)).
  +-define(expect_no_message(), ?expect_no_message_timeout(100)).
   
   consume_message(Message, Timeout) ->
       receive
  
positive.code:                         ?assert(false)
                  end
          end()).
  -define(expect_message(MsgPattern), ?expect_message(MsgPattern, 1000)).
  
  -define(expect_no_message(Timeout),
          % wrap in function so that the internal variables are out of the calling function's scope
          fun() ->
                  receive
  
negative.code:         Timeout -> ok
      end.
  
  -define(expect_message_ignore_timeout(MsgPattern, IgnoredMessage, Timeout),
          % wrap in function so that the internal variables are out of the calling function's scope
          fun() ->
                  % ignore two ignored messages, then wait for Timeout ignoring all ignored messages and do a final receive with the expected message
  