### absl::Status In namespace `testing::status`:
`IsOk()` `argument` is a `absl::Status` or `absl::StatusOr` whose status is OK.
`IsOkAndHolds(m)` `argument` is an `absl::StatusOr` whose status is OK and whose inner value matches matcher `m`. See also [`ASSERT_OK_AND_ASSIGN`](http://google3/testing/base/public/gmock_utils/status-matchers.h?q=symbol:ASSERT_OK_AND_ASSIGN).
`StatusHasPayload()` `argument` is a `absl::Status` or `absl::StatusOr` whose status is not OK and which has any payload.
`StatusHasPayload()` `argument` is a `absl::Status` or `absl::StatusOr` whose status is not OK and which has a payload of type `ProtoType`.
`StatusHasPayload(m)` `argument` is a `absl::Status` or `absl::StatusOr` whose status is not OK and which has a payload of type `ProtoType` that matches `m`.
`StatusIs(s, c, m)` `argument` is a `absl::Status` or `absl::StatusOr` where: the error space matches `s`, the status code matches `c`, and the error message matches `m`.
`StatusIs(c, m)` `argument` is a `absl::Status` or `absl::StatusOr` where: the error space is canonical, the status code matches `c`, and the error message matches `m`.
`StatusIs(c)` `argument` is a `absl::Status` or `absl::StatusOr` where: the error space is canonical, and the status code matches `c`.
`CanonicalStatusIs(c, m)` `argument` is a `absl::Status` or `absl::StatusOr` where: the canonical status code matches `c`, and the error message matches `m`.
`CanonicalStatusIs(c)` `argument` is a `absl::Status` or `absl::StatusOr` where: the canonical status code matches `c`.
The two- and one-argument version of StatusIs use util::GetErrorSpaceForEnum to determine the error space. If the error code matcher is not an enum with an associated ErrorSpace, then the canonical space will be used.