X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/7c695cd709aff2cc7cc5d36784ac53ad7b6435cf..a4240f6c2285c87de5763b4924fbc1c954b4408c:/src/tests/kitemlistkeyboardsearchmanagertest.cpp diff --git a/src/tests/kitemlistkeyboardsearchmanagertest.cpp b/src/tests/kitemlistkeyboardsearchmanagertest.cpp index 6720b9fc3..bbdb9c397 100644 --- a/src/tests/kitemlistkeyboardsearchmanagertest.cpp +++ b/src/tests/kitemlistkeyboardsearchmanagertest.cpp @@ -1,32 +1,21 @@ -/*************************************************************************** - * Copyright (C) 2011 by Frank Reininghaus * - * * - * 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 * - ***************************************************************************/ +/* + * SPDX-FileCopyrightText: 2011 Frank Reininghaus + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ #include "kitemviews/private/kitemlistkeyboardsearchmanager.h" -#include #include +#include +#include class KItemListKeyboardSearchManagerTest : public QObject { Q_OBJECT -private slots: +private Q_SLOTS: + void initTestCase(); void init(); void testBasicKeyboardSearch(); @@ -38,6 +27,11 @@ private: KItemListKeyboardSearchManager m_keyboardSearchManager; }; +void KItemListKeyboardSearchManagerTest::initTestCase() +{ + QStandardPaths::setTestModeEnabled(true); +} + void KItemListKeyboardSearchManagerTest::init() { // Make sure that the previous search string is cleared @@ -46,7 +40,7 @@ void KItemListKeyboardSearchManagerTest::init() void KItemListKeyboardSearchManagerTest::testBasicKeyboardSearch() { - QSignalSpy spy(&m_keyboardSearchManager, SIGNAL(changeCurrentItem(QString, bool))); + QSignalSpy spy(&m_keyboardSearchManager, &KItemListKeyboardSearchManager::changeCurrentItem); QVERIFY(spy.isValid()); m_keyboardSearchManager.addKeys("f"); @@ -72,7 +66,7 @@ void KItemListKeyboardSearchManagerTest::testAbortedKeyboardSearch() // to save time when running this test. m_keyboardSearchManager.setTimeout(100); - QSignalSpy spy(&m_keyboardSearchManager, SIGNAL(changeCurrentItem(QString, bool))); + QSignalSpy spy(&m_keyboardSearchManager, &KItemListKeyboardSearchManager::changeCurrentItem); QVERIFY(spy.isValid()); m_keyboardSearchManager.addKeys("f"); @@ -94,6 +88,13 @@ void KItemListKeyboardSearchManagerTest::testAbortedKeyboardSearch() m_keyboardSearchManager.addKeys("e"); QCOMPARE(spy.count(), 1); QCOMPARE(spy.takeFirst(), QList() << "le" << false); + + // the selection was deselected, for instance with Esc or a click outside the selection + m_keyboardSearchManager.slotSelectionChanged(KItemSet(), KItemSet() << 1); + + m_keyboardSearchManager.addKeys("a"); + QCOMPARE(spy.count(), 1); + QCOMPARE(spy.takeFirst(), QList() << "a" << true); } void KItemListKeyboardSearchManagerTest::testRepeatedKeyPress() @@ -104,7 +105,7 @@ void KItemListKeyboardSearchManagerTest::testRepeatedKeyPress() // 1. the string contains the repeated key only once, and // 2. the bool searchFromNextItem is true. - QSignalSpy spy(&m_keyboardSearchManager, SIGNAL(changeCurrentItem(QString, bool))); + QSignalSpy spy(&m_keyboardSearchManager, &KItemListKeyboardSearchManager::changeCurrentItem); QVERIFY(spy.isValid()); m_keyboardSearchManager.addKeys("p"); @@ -132,7 +133,7 @@ void KItemListKeyboardSearchManagerTest::testPressShift() // string. Make sure that this does not reset the current search. See // https://bugs.kde.org/show_bug.cgi?id=321286 - QSignalSpy spy(&m_keyboardSearchManager, SIGNAL(changeCurrentItem(QString, bool))); + QSignalSpy spy(&m_keyboardSearchManager, &KItemListKeyboardSearchManager::changeCurrentItem); QVERIFY(spy.isValid()); // Simulate that the user enters "a_b". @@ -152,6 +153,6 @@ void KItemListKeyboardSearchManagerTest::testPressShift() QCOMPARE(spy.takeFirst(), QList() << "a_b" << false); } -QTEST_MAIN(KItemListKeyboardSearchManagerTest) +QTEST_GUILESS_MAIN(KItemListKeyboardSearchManagerTest) #include "kitemlistkeyboardsearchmanagertest.moc"