Esempio n. 1
0
void DBusObject::RegisterSignalInterest(int object_id, QString signal_name)
{
    SignalId signal(object_id, signal_name);
    if (signal_watchers_.contains(signal))
    {
        qDebug() << "Already watching signal" << signal_name << "on object with id" << object_id;
        return;
    }

    QObjectNode::Ptr node = std::dynamic_pointer_cast<const QObjectNode>(GetNodeWithId(object_id));

    if (! node)
    {
        qWarning() << "Unable to register signal interest.";
        return;
    }

    QObject* obj = node->getWrappedObject();

    QString munged_signal_name = QString("2%1").arg(signal_name);
    SignalSpyPtr signal_spy(new QSignalSpy(obj, munged_signal_name.toLocal8Bit().data()));
    if (signal_spy->isValid())
    {
        signal_watchers_[signal] = signal_spy;
        qDebug() << "Now watching for emissions of the" << signal_name << "signal on object with id" << object_id;
    }
    else
    {
        qWarning() << "Signal name was not vlaid.";
    }
}
Esempio n. 2
0
void EventManagerTest::checkReceivedEventTriggersUpdatedSignal(){

    QString expectedEventName = "bbv Geburtstagsparty";
    IM::EventManager testee;
    QSignalSpy signal_spy(&testee, SIGNAL(EventListChanged()));

    testee.received_event(expectedEventName);

    QVERIFY(1 == signal_spy.count());
}