void tst_QQuickGraphicsInfo::testProperties() { QQuickView view; view.setSource(QUrl("data/basic.qml")); view.show(); QVERIFY(QTest::qWaitForWindowExposed(&view)); QSignalSpy spy(&view, SIGNAL(sceneGraphInitialized())); spy.wait(); QObject* obj = view.rootObject(); QVERIFY(obj); QSGRendererInterface *rif = view.rendererInterface(); const int expectedAPI = rif ? rif->graphicsApi() : QSGRendererInterface::Unknown; QCOMPARE(obj->property("api").toInt(), expectedAPI); #if QT_CONFIG(opengl) if (expectedAPI == QSGRendererInterface::OpenGL) { QCOMPARE(obj->property("shaderType").toInt(), int(QSGRendererInterface::GLSL)); QVERIFY(view.openglContext()); QSurfaceFormat format = view.openglContext()->format(); QCOMPARE(obj->property("majorVersion").toInt(), format.majorVersion()); QCOMPARE(obj->property("minorVersion").toInt(), format.minorVersion()); QCOMPARE(obj->property("profile").toInt(), static_cast<int>(format.profile())); QCOMPARE(obj->property("renderableType").toInt(), static_cast<int>(format.renderableType())); } #endif }
void tst_QQuickOpenGLInfo::testProperties() { QQuickView view; view.setSource(testFileUrl("basic.qml")); view.show(); QVERIFY(QTest::qWaitForWindowExposed(&view)); QSignalSpy spy(&view, SIGNAL(sceneGraphInitialized())); spy.wait(); QVERIFY(view.openglContext()); QSurfaceFormat format = view.openglContext()->format(); QObject* obj = view.rootObject(); QVERIFY(obj); QCOMPARE(obj->property("majorVersion").toInt(), format.majorVersion()); QCOMPARE(obj->property("minorVersion").toInt(), format.minorVersion()); QCOMPARE(obj->property("profile").toInt(), static_cast<int>(format.profile())); QCOMPARE(obj->property("renderableType").toInt(), static_cast<int>(format.renderableType())); }