QGrpcStatus: introduce isOk()

This is a shortcut to:

if (status.code() == QGrpcStatus::Ok)

which is a frequent check that users would have to do otherwise.

Pick-to: 6.8
Task-number: QTBUG-123625
Change-Id: Ie888243c8d48c872cc352bfbae985aeadda0e898
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Reviewed-by:  Alexey Edelev <alexey.edelev@qt.io>
This commit is contained in:
Dennis Oberst 2024-04-30 12:50:54 +02:00
parent 0fb1b2ec1c
commit f016b0ca01
3 changed files with 9 additions and 0 deletions

View File

@ -150,6 +150,12 @@ QGrpcStatus::operator QVariant() const
Returns the contained status message.
*/
/*!
\since 6.8
\fn bool QGrpcStatus::isOk() const noexcept
Returns \c true if code() is equal to \l {Ok}.
*/
/*!
\fn bool QGrpcStatus::operator==(const QGrpcStatus &lhs, const StatusCode &rhs) noexcept
Returns \c true if the status codes in \a lhs and \a rhs are equal.

View File

@ -65,6 +65,7 @@ public:
[[nodiscard]] StatusCode code() const noexcept { return m_code; }
[[nodiscard]] QString message() const noexcept { return m_message; }
[[nodiscard]] bool isOk() const noexcept { return code() == Ok; }
private:
QGrpcStatus::StatusCode m_code;

View File

@ -27,6 +27,7 @@ void QGrpcStatusTest::defaultConstructedIsOk() const
QGrpcStatus s1;
QVERIFY(s1.message().isEmpty());
QCOMPARE_EQ(s1.code(), QGrpcStatus::Ok);
QVERIFY(s1.isOk());
QGrpcStatus s2(QGrpcStatus::Ok);
QCOMPARE_EQ(s1.code(), s2.code());
@ -44,6 +45,7 @@ void QGrpcStatusTest::hasSpecialMemberFunctions() const
QGrpcStatus s1 = { QGrpcStatus::PermissionDenied, msg };
QCOMPARE_EQ(s1.code(), QGrpcStatus::PermissionDenied);
QCOMPARE_EQ(s1.message(), msg);
QVERIFY(!s1.isOk());
QGrpcStatus s2(s1);
check(s1, s2);