diff options
| author | Peter Penz <[email protected]> | 2011-02-04 22:13:50 +0100 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2011-02-04 22:13:50 +0100 |
| commit | 17d217b862ec21668632576fd9df86d3a0cd5813 (patch) | |
| tree | af7c6b862096d5e6c8ea08315e3df58a17065e42 /src/tests | |
| parent | 236eac2ffa671fe9cd56c233925a19d8c89f1141 (diff) | |
Add unittest for DolphinSearchBox
A minor API cleanup in DolphinSearchBox has been done related to the test.
Diffstat (limited to 'src/tests')
| -rw-r--r-- | src/tests/CMakeLists.txt | 31 | ||||
| -rw-r--r-- | src/tests/dolphinsearchboxtest.cpp | 70 |
2 files changed, 94 insertions, 7 deletions
diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt index e0d9aa2be..5159bf3ea 100644 --- a/src/tests/CMakeLists.txt +++ b/src/tests/CMakeLists.txt @@ -1,17 +1,34 @@ set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) include_directories( ${CMAKE_CURRENT_SOURCE_DIR}/.. ${CMAKE_CURRENT_BUILD_DIR}/.. ${KDE4_INCLUDES} ) -kde4_add_unit_test(dolphintreeviewtest TEST dolphintreeviewtest.cpp) -target_link_libraries(dolphintreeviewtest dolphinprivate ${KDE4_KDEUI_LIBS} ${QT_QTTEST_LIBRARY}) - +# DolphinDetailsView kde4_add_unit_test(dolphindetailsviewtest TEST dolphindetailsviewtest.cpp testbase.cpp ../views/zoomlevelinfo.cpp) target_link_libraries(dolphindetailsviewtest dolphinprivate ${KDE4_KIO_LIBS} ${QT_QTTEST_LIBRARY}) -kde4_add_unit_test(dolphinviewtest_icons TEST dolphinviewtest_icons.cpp dolphinviewtest_allviewmodes.cpp testbase.cpp ../views/zoomlevelinfo.cpp) -target_link_libraries(dolphinviewtest_icons dolphinprivate ${KDE4_KIO_LIBS} ${QT_QTTEST_LIBRARY}) +# DolphinSearchBox +set(dolphinsearchboxtest_SRCS + dolphinsearchboxtest.cpp + ../search/dolphinsearchbox.cpp + ../search/dolphinsearchinformation.cpp +) +kde4_add_kcfg_files(dolphinsearchboxtest_SRCS + ../search/dolphin_searchsettings.kcfgc +) +kde4_add_unit_test(dolphinsearchboxtest TEST ${dolphinsearchboxtest_SRCS}) +target_link_libraries(dolphinsearchboxtest ${KDE4_KIO_LIBS} ${QT_QTTEST_LIBRARY}) -kde4_add_unit_test(dolphinviewtest_details TEST dolphinviewtest_details.cpp dolphinviewtest_allviewmodes.cpp testbase.cpp ../views/zoomlevelinfo.cpp) -target_link_libraries(dolphinviewtest_details dolphinprivate ${KDE4_KIO_LIBS} ${QT_QTTEST_LIBRARY}) +# DolphinTreeView +kde4_add_unit_test(dolphintreeviewtest TEST dolphintreeviewtest.cpp) +target_link_libraries(dolphintreeviewtest dolphinprivate ${KDE4_KDEUI_LIBS} ${QT_QTTEST_LIBRARY}) +# DolphinView - columns kde4_add_unit_test(dolphinviewtest_columns TEST dolphinviewtest_columns.cpp dolphinviewtest_allviewmodes.cpp testbase.cpp ../views/zoomlevelinfo.cpp) target_link_libraries(dolphinviewtest_columns dolphinprivate ${KDE4_KIO_LIBS} ${QT_QTTEST_LIBRARY}) + +# DolphinView - details +kde4_add_unit_test(dolphinviewtest_details TEST dolphinviewtest_details.cpp dolphinviewtest_allviewmodes.cpp testbase.cpp ../views/zoomlevelinfo.cpp) +target_link_libraries(dolphinviewtest_details dolphinprivate ${KDE4_KIO_LIBS} ${QT_QTTEST_LIBRARY}) + +# DolphinView - icons +kde4_add_unit_test(dolphinviewtest_icons TEST dolphinviewtest_icons.cpp dolphinviewtest_allviewmodes.cpp testbase.cpp ../views/zoomlevelinfo.cpp) +target_link_libraries(dolphinviewtest_icons dolphinprivate ${KDE4_KIO_LIBS} ${QT_QTTEST_LIBRARY}) diff --git a/src/tests/dolphinsearchboxtest.cpp b/src/tests/dolphinsearchboxtest.cpp new file mode 100644 index 000000000..af6b58d32 --- /dev/null +++ b/src/tests/dolphinsearchboxtest.cpp @@ -0,0 +1,70 @@ +/*************************************************************************** + * Copyright (C) 2011 by Peter Penz <[email protected]> * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * + ***************************************************************************/ + +#include <qtest_kde.h> + +#include "search/dolphinsearchbox.h" +#include <qtestkeyboard.h> + +class DolphinSearchBoxTest : public QObject +{ + Q_OBJECT + +private slots: + void init(); + void cleanup(); + + void testTextClearing(); + +private: + DolphinSearchBox* m_searchBox; +}; + +void DolphinSearchBoxTest::init() +{ + m_searchBox = new DolphinSearchBox(); +} + +void DolphinSearchBoxTest::cleanup() +{ + delete m_searchBox; +} + +/** + * The test verifies whether the automatic clearing of the text works correctly. + * The text may not get cleared when the searchbox gets visible or invisible, + * as this would clear the text when switching between tabs. + */ +void DolphinSearchBoxTest::testTextClearing() +{ + m_searchBox->show(); + QVERIFY(m_searchBox->text().isEmpty()); + + m_searchBox->setText("xyz"); + m_searchBox->hide(); + m_searchBox->show(); + QCOMPARE(m_searchBox->text(), QString("xyz")); + + QTest::keyClick(m_searchBox, Qt::Key_Escape); + QVERIFY(m_searchBox->text().isEmpty()); +} + +QTEST_KDEMAIN(DolphinSearchBoxTest, GUI) + +#include "dolphinsearchboxtest.moc" |
