anchor.diff:  myassert(false, Reason) ->
       ct:fail(Reason).
   
  --define(expect_message(MsgPattern, Timeout),
  +-define(expect_message_timeout(MsgPattern, Timeout),
           % wrap in function so that the internal variables are out of the calling function's scope
           fun() ->
                   receive
  
positive.code:         Timeout -> ok
      end.
  
  -define(expect_message_ignore(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
  
negative.code:                         ?assert(false)
                  end
          end()).
  -define(expect_message(MsgPattern), ?expect_message_timeout(MsgPattern, 1000)).
  
  -define(expect_no_message_timeout(Timeout),
          % wrap in function so that the internal variables are out of the calling function's scope
          fun() ->
                  receive
  