SwiftShader sw check added to enable tests on hardware

On CI an Android emulator with SwiftShader software graphics
implementation is used. SwiftShader implementation is unable
to emulate this OpenGL functionality.

QSKIP the test if it is run in Android platform,
OpenGL and SwiftShader sw graphics implementation is found.

Task-number: QTQAINFRA-6333
Task-number: QTQAINFRA-6334
Pick-to: 6.8
Change-Id: I560aa796e7f364e645ebb41f89120673a0f59a5b
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
This commit is contained in:
Lauri Pohjanheimo 2025-02-04 09:38:22 +02:00
parent a069569ea2
commit 598db6f4b1

View File

@ -2089,13 +2089,6 @@ void tst_QRhi::renderToTextureTextureArray()
QFETCH(QRhi::Implementation, impl);
QFETCH(QRhiInitParams *, initParams);
#ifdef Q_OS_ANDROID
if (impl == QRhi::OpenGLES2) {
QSKIP("This test fails with OpenGLES software rendering on Android emulators, "
"see QTBUG-132934.");
}
#endif
QScopedPointer<QRhi> rhi(QRhi::create(impl, initParams, QRhi::Flags(), nullptr));
if (!rhi)
QSKIP("QRhi could not be created, skipping testing rendering");
@ -2103,6 +2096,11 @@ void tst_QRhi::renderToTextureTextureArray()
if (!rhi->isFeatureSupported(QRhi::TextureArrays))
QSKIP("TextureArrays is not supported with this backend, skipping test");
if (isAndroidOpenGLSwiftShader(impl, rhi.get())) {
QSKIP("SwiftShader software acceleration is used which does not support this OpenGLES "
"feature. See QTBUG-132934");
}
const QSize outputSize(512, 256);
const int ARRAY_SIZE = 8;
QScopedPointer<QRhiTexture> texture(rhi->newTextureArray(QRhiTexture::RGBA8,
@ -5284,13 +5282,6 @@ void tst_QRhi::threeDimTexture()
QFETCH(QRhi::Implementation, impl);
QFETCH(QRhiInitParams *, initParams);
#ifdef Q_OS_ANDROID
if (impl == QRhi::OpenGLES2) {
QSKIP("This test fails with OpenGLES software rendering on Android emulators, "
"see QTBUG-132934.");
}
#endif
QScopedPointer<QRhi> rhi(QRhi::create(impl, initParams));
if (!rhi)
QSKIP("QRhi could not be created, skipping testing 3D textures");
@ -5298,6 +5289,11 @@ void tst_QRhi::threeDimTexture()
if (!rhi->isFeatureSupported(QRhi::ThreeDimensionalTextures))
QSKIP("Skipping testing 3D textures because they are reported as unsupported");
if (isAndroidOpenGLSwiftShader(impl, rhi.get())) {
QSKIP("SwiftShader software acceleration is used which does not support this OpenGLES "
"feature. See QTBUG-132934");
}
const int WIDTH = 512;
const int HEIGHT = 256;
const int DEPTH = 128;