#include "window/VisibilityController.h" #include class TestVisibility : public QObject { Q_OBJECT private Q_SLOTS: void followsFieldFocus() { VisibilityController v; v.setFieldActive(true); QVERIFY(v.isVisible()); v.setFieldActive(false); QVERIFY(!v.isVisible()); } void dismissLastsUntilFocusChanges() { VisibilityController v; v.setFieldActive(true); v.hide(); QVERIFY(!v.isVisible()); v.setFieldActive(false); v.setFieldActive(true); QVERIFY(v.isVisible()); } void alwaysVisibleShowsWithoutField() { VisibilityController v; v.setAlwaysVisible(true); QVERIFY(v.isVisible()); v.hide(); // dismiss key still works... QVERIFY(!v.isVisible()); v.setFieldActive(true); // ...until the focus changes v.setFieldActive(false); QVERIFY(v.isVisible()); } void toggleShowsWithoutField() { VisibilityController v; v.toggle(); QVERIFY(v.isVisible()); v.toggle(); QVERIFY(!v.isVisible()); } void standaloneAlwaysVisible() { VisibilityController v; v.setStandalone(true); QVERIFY(v.isVisible()); } }; QTEST_GUILESS_MAIN(TestVisibility) #include "tst_visibility.moc"