#ifndef PRODUCTION_SUSHID_SAFEPOWER_AGENT_BMC_TEST_UTIL_H_
#define PRODUCTION_SUSHID_SAFEPOWER_AGENT_BMC_TEST_UTIL_H_

#include "gmock/gmock.h"
#include "absl/status/status.h"

namespace testing::status {
// NOTE does not use the message in the status.
MATCHER_P(StatusIs, statusIn, "") {
  *result_listener << "returning status code " << arg << " instead of "
                   << statusIn;
  return (arg.code() == statusIn);
}
}  // namespace testing::status

#endif  // PRODUCTION_SUSHID_SAFEPOWER_AGENT_BMC_TEST_UTIL_H_
