[Interest] Fwd: Is there a way to mock the QNAM?

Philipp Kursawe phil.kursawe at gmail.com
Tue Sep 3 10:17:27 CEST 2013


Great! Spacibo ;) I had not seen that in the docs.

On Tue, Sep 3, 2013 at 10:05 AM, Konstantin Tokarev <annulen at yandex.ru> wrote:
>
>
> 03.09.2013, 11:59, "Philipp Kursawe" <phil.kursawe at gmail.com>:
>> I did not find a way to write unit-tests for my QNAM based code. My
>> objects take a QNAM and perform operations with it like ::get() and
>> ::post()
>> Of course for Unit tests it should not really perform network
>> requests. The usual way to test such things is to mock the network
>> layer. However, since none of the get/post/put methods in QNAM are
>> virtual I cannot override them :( My only solution for now is to use
>> an interface based approach and not hand in the QNAM but rather an
>> interface that looks like this:
>> struct HttpClient {
>>   virtual QNetworkReply* get(const QNetworkRequest&) const;
>>   ...
>> }
>>
>> This is then easily mockable.
>
> You need to override createRequest(), it is virtual.
>
> --
> Regards,
> Konstantin



More information about the Interest mailing list