diff --git a/tests/gui/TestGui.cpp b/tests/gui/TestGui.cpp index b428b62c8..64ddbca73 100644 --- a/tests/gui/TestGui.cpp +++ b/tests/gui/TestGui.cpp @@ -217,6 +217,26 @@ void TestGui::testSearch() QCOMPARE(entryView->model()->rowCount(), 1); } +void TestGui::testKeePass1Import() +{ + QAction* actionImportKeePass1 = m_mainWindow->findChild("actionImportKeePass1"); + fileDialog()->setNextFileName(QString(KEEPASSX_TEST_DATA_DIR).append("/basic.kdb")); + actionImportKeePass1->trigger(); + QTest::qWait(20); + + QWidget* keepass1OpenWidget = m_mainWindow->findChild("keepass1OpenWidget"); + QLineEdit* editPassword = keepass1OpenWidget->findChild("editPassword"); + QVERIFY(editPassword); + + QTest::keyClicks(editPassword, "masterpw"); + QTest::keyClick(editPassword, Qt::Key_Enter); + QTest::qWait(20); + + QTabWidget* tabWidget = m_mainWindow->findChild("tabWidget"); + QCOMPARE(tabWidget->count(), 2); + QCOMPARE(tabWidget->tabText(tabWidget->currentIndex()), QString("basic [New database]*")); +} + void TestGui::cleanupTestCase() { delete m_mainWindow; diff --git a/tests/gui/TestGui.h b/tests/gui/TestGui.h index b210b1a5a..8ff0fef95 100644 --- a/tests/gui/TestGui.h +++ b/tests/gui/TestGui.h @@ -33,6 +33,7 @@ private Q_SLOTS: void testEditEntry(); void testAddEntry(); void testSearch(); + void testKeePass1Import(); void cleanupTestCase(); private: