diff options
Diffstat (limited to 'tests/auto/qexplicitlyshareddatapointer')
-rw-r--r-- | tests/auto/qexplicitlyshareddatapointer/qexplicitlyshareddatapointer.pro | 2 | ||||
-rw-r--r-- | tests/auto/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp | 20 |
2 files changed, 21 insertions, 1 deletions
diff --git a/tests/auto/qexplicitlyshareddatapointer/qexplicitlyshareddatapointer.pro b/tests/auto/qexplicitlyshareddatapointer/qexplicitlyshareddatapointer.pro index 3a22199..8a45aa2 100644 --- a/tests/auto/qexplicitlyshareddatapointer/qexplicitlyshareddatapointer.pro +++ b/tests/auto/qexplicitlyshareddatapointer/qexplicitlyshareddatapointer.pro @@ -1,3 +1,3 @@ load(qttest_p4) SOURCES += tst_qexplicitlyshareddatapointer.cpp -QT-=gui +QT = core diff --git a/tests/auto/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp b/tests/auto/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp index 631b391..9a1346a 100644 --- a/tests/auto/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp +++ b/tests/auto/qexplicitlyshareddatapointer/tst_qexplicitlyshareddatapointer.cpp @@ -61,6 +61,7 @@ private Q_SLOTS: void clone() const; void data() const; void reset() const; + void swap() const; }; class MyClass : public QSharedData @@ -233,6 +234,25 @@ void tst_QExplicitlySharedDataPointer::reset() const } } +void tst_QExplicitlySharedDataPointer::swap() const +{ + QExplicitlySharedDataPointer<MyClass> p1(0), p2(new MyClass()); + QVERIFY(!p1.data()); + QVERIFY(p2.data()); + + p1.swap(p2); + QVERIFY(p1.data()); + QVERIFY(!p2.data()); + + p1.swap(p2); + QVERIFY(!p1.data()); + QVERIFY(p2.data()); + + qSwap(p1, p2); + QVERIFY(p1.data()); + QVERIFY(!p2.data()); +} + QTEST_MAIN(tst_QExplicitlySharedDataPointer) #include "tst_qexplicitlyshareddatapointer.moc" |