Qtestlib: QNetworkRequest not executed

Posted by dzen on Stack Overflow See other posts from Stack Overflow or by dzen
Published on 2010-04-13T11:24:48Z Indexed on 2010/04/13 14:02 UTC
Read the original article Hit count: 467

I would like to test an asynchronous request to a webserver. For that purpose I'm creating a simple unittest to quickly try a few lines of code:

void AsynchronousCall::testGet()
{
    QNetworkAccessManager *nam =  new QNetworkAccessManager(this);

    QUrl url("http://myownhttpserver.org");
    QNetworkRequest req(url);


    this->connect(nam, SIGNAL(finished(QNetworkReply*)), this, SLOT(reqFinished(QNetworkReply *)));
    QNetworkReply *rep = nam->get(req);

}

void AsynchronousCall::reqFinished(QNetworkReply *rep)
{
    qDebug() << rep->readAll();
    qDebug() << "finshed";
}

The problem is that reqFinished() is never reached. If I had a simple QEventLoop and and a loop.exec() just after the nam->get(req); the request is executed.

Any hint ? Do I have to use a loop.exec() in my every unittests ?

© Stack Overflow or respective owner

Related posts about qt

Related posts about qnetworkaccessmanager