asserts.hrl 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. %%--------------------------------------------------------------------
  2. %% Copyright (c) 2023 EMQ Technologies Co., Ltd. All Rights Reserved.
  3. %%
  4. %% Licensed under the Apache License, Version 2.0 (the "License");
  5. %% you may not use this file except in compliance with the License.
  6. %% You may obtain a copy of the License at
  7. %%
  8. %% http://www.apache.org/licenses/LICENSE-2.0
  9. %%
  10. %% Unless required by applicable law or agreed to in writing, software
  11. %% distributed under the License is distributed on an "AS IS" BASIS,
  12. %% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. %% See the License for the specific language governing permissions and
  14. %% limitations under the License.
  15. %%--------------------------------------------------------------------
  16. -include_lib("snabbkaffe/include/snabbkaffe.hrl").
  17. -define(assertWaitEvent(Code, EventMatch, Timeout),
  18. ?check_trace(
  19. ?wait_async_action(
  20. Code,
  21. EventMatch,
  22. Timeout
  23. ),
  24. fun(Trace) ->
  25. ?assert(
  26. lists:any(
  27. fun
  28. (EventMatch) -> true;
  29. (_) -> false
  30. end,
  31. Trace
  32. )
  33. )
  34. end
  35. )
  36. ).
  37. -define(assertInclude(Pattern, List),
  38. ?assert(
  39. lists:any(
  40. fun(El) ->
  41. case El of
  42. Pattern -> true;
  43. _ -> false
  44. end
  45. end,
  46. List
  47. )
  48. )
  49. ).