qtquick.cpp 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. // (c) Copyright Juergen Hunold 2012
  2. // Use, modification and distribution is subject to the Boost Software
  3. // License, Version 1.0. (See accompanying file LICENSE.txt or copy at
  4. // https://www.bfgroup.xyz/b2/LICENSE.txt)
  5. #define BOOST_TEST_MODULE QtQuick
  6. #include <QDir>
  7. #include <QTimer>
  8. #include <QGuiApplication>
  9. #include <QQmlEngine>
  10. #include <QQuickView>
  11. #include <QDebug>
  12. #include <boost/test/unit_test.hpp>
  13. BOOST_AUTO_TEST_CASE (defines)
  14. {
  15. BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_QML_LIB), true);
  16. BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_QUICK_LIB), true);
  17. }
  18. BOOST_AUTO_TEST_CASE (simple_test)
  19. {
  20. QGuiApplication app(boost::unit_test::framework::master_test_suite().argc,
  21. boost::unit_test::framework::master_test_suite().argv);
  22. QQuickView view;
  23. QString fileName(boost::unit_test::framework::master_test_suite().argv[1]);
  24. view.connect(view.engine(), SIGNAL(quit()), &app, SLOT(quit()));
  25. view.setSource(QUrl::fromLocalFile(fileName)); \
  26. QTimer::singleShot(2000, &app, SLOT(quit())); // Auto-close window
  27. if (QGuiApplication::platformName() == QLatin1String("qnx") ||
  28. QGuiApplication::platformName() == QLatin1String("eglfs")) {
  29. view.setResizeMode(QQuickView::SizeRootObjectToView);
  30. view.showFullScreen();
  31. } else {
  32. view.show();
  33. }
  34. BOOST_CHECK_EQUAL(app.exec(), 0);
  35. }