Exemple #1
0
auto thrown(T &&thing) {
  return thrown_raw<Exception>(filter(
    [](auto &&e) { return std::string(e.what()); },
    ensure_matcher(std::forward<T>(thing)),
    "what: "
  ));
}
Exemple #2
0
inline auto exited(T &&thing) {
  auto matcher = ensure_matcher(std::forward<T>(thing));
  return detail::exited_impl<decltype(matcher)>(std::move(matcher));
}
Exemple #3
0
auto thrown_raw(T &&thing) {
  auto matcher = ensure_matcher(std::forward<T>(thing));
  return detail::thrown_impl<Exception, decltype(matcher)>(std::move(matcher));
}
auto each(T &&thing) {
  return detail::member_impl<ensure_matcher_t<T>>(
    "each ", true, ensure_matcher(std::forward<T>(thing))
  );
}
auto member(T &&thing) {
  return detail::member_impl<ensure_matcher_t<T>>(
    "member ", false, ensure_matcher(std::forward<T>(thing))
  );
}
inline auto tuple(T &&...things) {
  return detail::tuple_impl<ensure_matcher_t<T>...>(
    ensure_matcher(std::forward<T>(things))...
  );
}