diff --git a/src/qgcunittest/MainWindowTest.cc b/src/qgcunittest/MainWindowTest.cc index 9e757d1f7ee30d619ccb63806153f90226f550a1..0ddb90868df81e396f8204c8723dfc0fbe89606d 100644 --- a/src/qgcunittest/MainWindowTest.cc +++ b/src/qgcunittest/MainWindowTest.cc @@ -27,7 +27,7 @@ /// @author Don Gagne #include "MainWindowTest.h" -#include "MainWindow.h" +#include "QGCToolBar.h" UT_REGISTER_TEST(MainWindowTest) @@ -39,19 +39,30 @@ MainWindowTest::MainWindowTest(void) void MainWindowTest::init(void) { UnitTest::init(); + + _mainWindow = MainWindow::_create(NULL, MainWindow::CUSTOM_MODE_PX4); + Q_CHECK_PTR(_mainWindow); } void MainWindowTest::cleanup(void) { + _mainWindow->close(); + delete _mainWindow; + UnitTest::cleanup(); } -void MainWindowTest::_simpleDisplay_test(void) +void MainWindowTest::_clickThrough_test(void) { - MainWindow* mainWindow = MainWindow::_create(NULL, MainWindow::CUSTOM_MODE_PX4); - Q_CHECK_PTR(mainWindow); + QGCToolBar* toolbar = _mainWindow->findChild(); + Q_ASSERT(toolbar); - mainWindow->close(); + QList buttons = toolbar->findChildren(); + foreach(QToolButton* button, buttons) { + if (!button->menu()) { + QTest::mouseClick(button, Qt::LeftButton); + QTest::qWait(1000); + } + } - delete mainWindow; } diff --git a/src/qgcunittest/MainWindowTest.h b/src/qgcunittest/MainWindowTest.h index 107a9fda6a4dcc0fda879006f42868ae7b5ed0d8..47c9c20d6abdc4f01c2bd070bb47d636be77c395 100644 --- a/src/qgcunittest/MainWindowTest.h +++ b/src/qgcunittest/MainWindowTest.h @@ -30,6 +30,7 @@ #define MAINWINDOWTEST_H #include "UnitTest.h" +#include "MainWindow.h" class MainWindowTest : public UnitTest { @@ -42,7 +43,10 @@ private slots: void init(void); void cleanup(void); - void _simpleDisplay_test(void); + void _clickThrough_test(void); + +private: + MainWindow* _mainWindow; }; #endif