QDuplicateTracker: add clear()

I'll need it in QFactoryLoader.

Pick-to: 6.2
Change-Id: Ice04365c72984d07a64dfffd16b47f68d25252b4
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
bb10
Thiago Macieira 2021-11-04 17:37:32 -07:00
parent fba4ca0ec1
commit 090c7e3262
2 changed files with 21 additions and 0 deletions

View File

@ -148,6 +148,11 @@ public:
return appendTo(c); // lvalue version
}
}
void clear()
{
set.clear();
}
};
QT_END_NAMESPACE

View File

@ -38,6 +38,7 @@ class tst_QDuplicateTracker : public QObject
Q_OBJECT
private slots:
void hasSeen();
void clear();
void appendTo();
void appendTo_special();
};
@ -76,6 +77,21 @@ void tst_QDuplicateTracker::hasSeen()
}
}
void tst_QDuplicateTracker::clear()
{
QDuplicateTracker<int, 2> tracker;
QVERIFY(!tracker.hasSeen(0));
QVERIFY(tracker.hasSeen(0));
QVERIFY(!tracker.hasSeen(1));
QVERIFY(tracker.hasSeen(1));
tracker.clear();
QVERIFY(!tracker.hasSeen(0));
QVERIFY(tracker.hasSeen(0));
QVERIFY(!tracker.hasSeen(1));
QVERIFY(tracker.hasSeen(1));
}
void tst_QDuplicateTracker::appendTo()
{
QDuplicateTracker<int, 2> tracker;