summaryrefslogtreecommitdiffstats
path: root/src/testlib/qsignalspy.h
diff options
context:
space:
mode:
authorVitaly Fanaskov <vitaly.fanaskov@qt.io>2019-08-09 16:49:51 +0200
committerVolker Hilsheimer <volker.hilsheimer@qt.io>2019-08-13 08:37:56 +0000
commit51567cbe214ac6f82948d05aeed19d46d48f210a (patch)
treedeb872f71700533b257a45985435e33a1d9ed44d /src/testlib/qsignalspy.h
parent25354bd01a7fefab45f81d946de205ead2694231 (diff)
QSignalSpy: Extract meta signal validation to the separate method
Change-Id: I37a74ea4487a437646815d3117ec8b0fd7073205 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Diffstat (limited to 'src/testlib/qsignalspy.h')
-rw-r--r--src/testlib/qsignalspy.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/testlib/qsignalspy.h b/src/testlib/qsignalspy.h
index 91d23db715..7a8f9efa9a 100644
--- a/src/testlib/qsignalspy.h
+++ b/src/testlib/qsignalspy.h
@@ -110,12 +110,9 @@ public:
const QMetaObject * const mo = obj->metaObject();
const QMetaMethod signalMetaMethod = QMetaMethod::fromSignal(signal0);
const int sigIndex = signalMetaMethod.methodIndex();
- if (!signalMetaMethod.isValid() ||
- signalMetaMethod.methodType() != QMetaMethod::Signal) {
- qWarning("QSignalSpy: Not a valid signal: '%s'",
- signalMetaMethod.methodSignature().constData());
+
+ if (!isSignalMetaMethodValid(signalMetaMethod))
return;
- }
if (!connectToSignal(obj, sigIndex))
return;
@@ -166,6 +163,16 @@ private:
return connected;
}
+ static bool isSignalMetaMethodValid(const QMetaMethod &signal)
+ {
+ const bool valid = signal.isValid() && signal.methodType() == QMetaMethod::Signal;
+
+ if (!valid)
+ qWarning("QSignalSpy: Not a valid signal: '%s'", signal.methodSignature().constData());
+
+ return valid;
+ }
+
void initArgs(const QMetaMethod &member, const QObject *obj)
{
args.reserve(member.parameterCount());