diff options
author | Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> | 2015-08-26 15:09:50 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> | 2015-08-27 19:27:26 +0000 |
commit | 2117a76136e6e3e48f70d7a444b06c0ee0ff9ec4 (patch) | |
tree | d9af91a742c9524c1975cf9502b1ba461b60693e /tests/auto/widgets/dialogs/qfiledialog2 | |
parent | 9cdbf48c3375feb9bff2e8a4749ec47b9831b15c (diff) |
QPlatformFileDialogHelper::cleanFilterList(): Allow for ',' in glob.
RCS files (text/plain) have the glob pattern "*,v", which caused
the regular expression match to fail.
Task-number: QTBUG-47923
Change-Id: I7d8682ef51306cb4da58a2b3880842bd99892ea3
Reviewed-by: David Faure <david.faure@kdab.com>
Diffstat (limited to 'tests/auto/widgets/dialogs/qfiledialog2')
-rw-r--r-- | tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp index ed34c67aad..85f60102a7 100644 --- a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp +++ b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp @@ -57,6 +57,8 @@ #include "../../../../../src/widgets/dialogs/qfilesystemmodel_p.h" #include "../../../../../src/widgets/dialogs/qfiledialog_p.h" +#include <qpa/qplatformdialoghelper.h> + #if defined(Q_OS_WIN) && !defined(Q_OS_WINCE) #include "../../../network-settings.h" #endif @@ -134,6 +136,8 @@ private slots: void QTBUG6558_showDirsOnly(); void QTBUG4842_selectFilterWithHideNameFilterDetails(); void dontShowCompleterOnRoot(); + void nameFilterParsing_data(); + void nameFilterParsing(); private: void cleanupSettingsFile(); @@ -1353,5 +1357,24 @@ void tst_QFileDialog2::dontShowCompleterOnRoot() QTRY_VERIFY(lineEdit->completer()->popup()->isHidden()); } +void tst_QFileDialog2::nameFilterParsing_data() +{ + QTest::addColumn<QString>("filterString"); + QTest::addColumn<QStringList>("filters"); + + // QTBUG-47923: Do not trip over "*,v". + QTest::newRow("text") << "plain text document (*.txt *.asc *,v *.doc)" + << (QStringList() << "*.txt" << "*.asc" << "*,v" << "*.doc"); + QTest::newRow("html") << "HTML document (*.html *.htm)" + << (QStringList() << "*.html" << "*.htm"); +} + +void tst_QFileDialog2::nameFilterParsing() +{ + QFETCH(QString, filterString); + QFETCH(QStringList, filters); + QCOMPARE(QPlatformFileDialogHelper::cleanFilterList(filterString), filters); +} + QTEST_MAIN(tst_QFileDialog2) #include "tst_qfiledialog2.moc" |