diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp index f36bbbc5b6..18678a35c0 100644 --- a/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp +++ b/tests/auto/corelib/itemmodels/qabstractproxymodel/tst_qabstractproxymodel.cpp @@ -72,6 +72,7 @@ private slots: void submit(); void testRoleNames(); void testSwappingRowsProxy(); + void testDragAndDrop(); }; // Subclass that exposes the protected functions. @@ -495,6 +496,25 @@ void tst_QAbstractProxyModel::testSwappingRowsProxy() } } +class StandardItemModelWithCustomDragAndDrop : public QStandardItemModel +{ +public: + QStringList mimeTypes() const { return QStringList() << QStringLiteral("foo/mimetype"); } + Qt::DropActions supportedDragActions() const { return Qt::CopyAction | Qt::LinkAction; } + Qt::DropActions supportedDropActions() const { return Qt::MoveAction; } +}; + +void tst_QAbstractProxyModel::testDragAndDrop() +{ + StandardItemModelWithCustomDragAndDrop sourceModel; + SubQAbstractProxyModel proxy; + proxy.setSourceModel(&sourceModel); + QCOMPARE(proxy.mimeTypes(), sourceModel.mimeTypes()); + QCOMPARE(proxy.supportedDragActions(), sourceModel.supportedDragActions()); + QCOMPARE(proxy.supportedDropActions(), sourceModel.supportedDropActions()); +} + + QTEST_MAIN(tst_QAbstractProxyModel) #include "tst_qabstractproxymodel.moc" |