void CallModelTest::testMarkAllRead()
{
    CallModel callModel;

    QSignalSpy eventsCommitted(&callModel, SIGNAL(eventsCommitted(const QList<CommHistory::Event>&,
                                                                   bool)));
    // Test event is unread by default.
    int eventId1 = addTestEvent(callModel, Event::CallEvent, Event::Inbound, ACCOUNT1, -1,
                                "Mark all as read test 1", false, false,
                                QDateTime::currentDateTime(), REMOTEUID1);
    QVERIFY(waitSignal(eventsCommitted));

    eventsCommitted.clear();
    int eventId2 = addTestEvent(callModel, Event::CallEvent, Event::Inbound, ACCOUNT1, -1,
                                "Mark all as read test 2", false, false,
                                QDateTime::currentDateTime(), REMOTEUID2);
    QVERIFY(waitSignal(eventsCommitted));

    eventsCommitted.clear();
    QVERIFY(callModel.markAllRead());
    waitSignal(eventsCommitted);

    Event e1, e2;
    QVERIFY(callModel.databaseIO().getEvent(eventId1, e1));
    QVERIFY(e1.isRead());

    QVERIFY(callModel.databaseIO().getEvent(eventId2, e2));
    QVERIFY(e2.isRead());
}