summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomi Korpipaa <tomi.korpipaa@qt.io>2023-08-02 12:07:38 +0300
committerTomi Korpipaa <tomi.korpipaa@qt.io>2023-08-03 09:04:13 +0300
commitcfd24d907993580b472a8c038cc2662f3087ab5a (patch)
treea657e9beae8fc04d1978b36e7dbb5a724d72f337
parent451a72f1dadc9765415d3de786be209ea2d1d2bd (diff)
Fix flaky autotest
Pick-to: 6.6 Fixes: QTBUG-114852 Change-Id: I5056fc228ea1ca4f040a17e6508ee2700884a788 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Sami Varanka <sami.varanka@qt.io>
-rw-r--r--src/datavisualizationqml/abstractdeclarative.cpp2
-rw-r--r--tests/auto/qmltest/bars3d/tst_basic.qml87
-rw-r--r--tests/auto/qmltest/scatter3d/tst_basic.qml87
-rw-r--r--tests/auto/qmltest/surface3d/tst_basic.qml87
4 files changed, 121 insertions, 142 deletions
diff --git a/src/datavisualizationqml/abstractdeclarative.cpp b/src/datavisualizationqml/abstractdeclarative.cpp
index 1c6562b9..94dda0e6 100644
--- a/src/datavisualizationqml/abstractdeclarative.cpp
+++ b/src/datavisualizationqml/abstractdeclarative.cpp
@@ -565,7 +565,7 @@ void AbstractDeclarative::render()
QOpenGLFunctions *funcs = QOpenGLContext::currentContext()->functions();
- if (isVisible()) {
+ if (funcs && isVisible()) {
funcs->glDepthMask(GL_TRUE);
funcs->glEnable(GL_DEPTH_TEST);
funcs->glDepthFunc(GL_LESS);
diff --git a/tests/auto/qmltest/bars3d/tst_basic.qml b/tests/auto/qmltest/bars3d/tst_basic.qml
index e019ef7d..881d629e 100644
--- a/tests/auto/qmltest/bars3d/tst_basic.qml
+++ b/tests/auto/qmltest/bars3d/tst_basic.qml
@@ -101,8 +101,6 @@ Item {
compare(empty.rowAxis.type, AbstractAxis3D.AxisTypeCategory)
compare(empty.valueAxis.type, AbstractAxis3D.AxisTypeValue)
waitForRendering(top)
- empty.destroy()
- waitForRendering(top)
}
}
@@ -147,8 +145,6 @@ Item {
compare(basic.barSpacing, Qt.size(-1.0, -1.0), "barSpacing")
compare(basic.barSeriesMargin, Qt.size(-1.0, -1.0), "barSeriesMargin")
waitForRendering(top)
- basic.destroy()
- waitForRendering(top)
}
}
@@ -161,12 +157,12 @@ Item {
return;
constructCommon()
+ if (common.shadowsSupported === false)
+ return;
+
compare(common.selectionMode, AbstractGraph3D.SelectionItem, "selectionMode")
compare(common.shadowQuality, AbstractGraph3D.ShadowQualityMedium, "shadowQuality")
- if (common.shadowsSupported === true)
- compare(common.msaaSamples, 4, "msaaSamples")
- else
- compare(common.msaaSamples, 0, "msaaSamples")
+ compare(common.msaaSamples, 4, "msaaSamples")
compare(common.theme.type, Theme3D.ThemeQt, "theme")
compare(common.renderingMode, AbstractGraph3D.RenderIndirect, "renderingMode")
compare(common.measureFps, false, "measureFps")
@@ -187,17 +183,14 @@ Item {
}
function test_2_change_common() {
- if (Qt.platform.os === "android")
+ if (Qt.platform.os === "android" || common.shadowsSupported === false)
return;
common.selectionMode = AbstractGraph3D.SelectionItem | AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionSlice
common.shadowQuality = AbstractGraph3D.ShadowQualitySoftHigh
- compare(common.shadowQuality, AbstractGraph3D.ShadowQualitySoftHigh, "shadowQuality")
common.msaaSamples = 8
- if (common.shadowsSupported === true)
- compare(common.msaaSamples, 8, "msaaSamples")
- else
- compare(common.msaaSamples, 0, "msaaSamples")
+ compare(common.shadowQuality, AbstractGraph3D.ShadowQualitySoftHigh, "shadowQuality")
+ compare(common.msaaSamples, 8, "msaaSamples")
common.theme.type = Theme3D.ThemeRetro
common.renderingMode = AbstractGraph3D.RenderDirectToBackground_NoClear
common.measureFps = true
@@ -230,20 +223,45 @@ Item {
waitForRendering(top)
}
- function test_3_common_initialized() {
+ function test_3_change_invalid_common() {
+ if (Qt.platform.os === "android" || common.shadowsSupported === false)
+ return;
+
+ common.selectionMode = AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionColumn | AbstractGraph3D.SelectionSlice
+ common.theme.type = -2
+ common.renderingMode = -1
+ common.measureFps = false
+ common.orthoProjection = false
+ common.aspectRatio = -1.0
+ common.polar = false
+ common.horizontalAspectRatio = -2
+ common.reflection = false
+ common.reflectivity = -1.0
+ compare(common.selectionMode, AbstractGraph3D.SelectionItem | AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionSlice, "selectionMode")
+ compare(common.theme.type, Theme3D.ThemeRetro, "theme")
+ compare(common.renderingMode, AbstractGraph3D.RenderDirectToBackground_NoClear, "renderingMode")
+ compare(common.aspectRatio, 1.0, "aspectRatio")
+ compare(common.horizontalAspectRatio, 1.0, "horizontalAspectRatio")
+ compare(common.reflectivity, 1.0, "reflectivity")
+ waitForRendering(top)
+ }
+ }
+
+ TestCase {
+ name: "Bars3D Common Initialized"
+ when: windowShown
+
+ function test_1_common_initialized() {
if (Qt.platform.os === "android")
return;
constructCommonInit()
+ if (common_init.shadowsSupported === false) // This test is flaky on VM, use shadowsSupported to detect being run in VM
+ return;
compare(common_init.selectionMode, AbstractGraph3D.SelectionNone, "selectionMode")
- if (common_init.shadowsSupported === true) {
- tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityLow)
- compare(common_init.msaaSamples, 2, "msaaSamples")
- } else {
- tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityNone)
- compare(common_init.msaaSamples, 0, "msaaSamples")
- }
+ tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityLow)
+ compare(common_init.msaaSamples, 2, "msaaSamples")
compare(common_init.theme.type, Theme3D.ThemeUserDefined, "theme")
compare(common_init.renderingMode, AbstractGraph3D.RenderIndirect, "renderingMode")
compare(common_init.measureFps, true, "measureFps")
@@ -259,31 +277,6 @@ Item {
compare(common_init.locale, Qt.locale("UK"), "locale")
compare(common_init.margin, 0.2, "margin")
waitForRendering(top)
- common_init.destroy();
- waitForRendering(top)
- }
-
- function test_4_change_invalid_common() {
- if (Qt.platform.os === "android")
- return;
-
- common.selectionMode = AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionColumn | AbstractGraph3D.SelectionSlice
- common.theme.type = -2
- common.renderingMode = -1
- common.measureFps = false
- common.orthoProjection = false
- common.aspectRatio = -1.0
- common.polar = false
- common.horizontalAspectRatio = -2
- common.reflection = false
- common.reflectivity = -1.0
- compare(common.selectionMode, AbstractGraph3D.SelectionItem | AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionSlice, "selectionMode")
- compare(common.theme.type, Theme3D.ThemeRetro, "theme")
- compare(common.renderingMode, AbstractGraph3D.RenderDirectToBackground_NoClear, "renderingMode")
- compare(common.aspectRatio, 1.0, "aspectRatio")
- compare(common.horizontalAspectRatio, 1.0, "horizontalAspectRatio")
- compare(common.reflectivity, 1.0, "reflectivity")
- waitForRendering(top)
}
}
}
diff --git a/tests/auto/qmltest/scatter3d/tst_basic.qml b/tests/auto/qmltest/scatter3d/tst_basic.qml
index 401148c1..7320ac49 100644
--- a/tests/auto/qmltest/scatter3d/tst_basic.qml
+++ b/tests/auto/qmltest/scatter3d/tst_basic.qml
@@ -86,8 +86,6 @@ Item {
compare(empty.axisZ.type, AbstractAxis3D.AxisTypeValue)
compare(empty.axisY.type, AbstractAxis3D.AxisTypeValue)
waitForRendering(top)
- empty.destroy()
- waitForRendering(top)
}
}
@@ -100,8 +98,6 @@ Item {
compare(basic.width, 150, "width")
compare(basic.height, 150, "height")
waitForRendering(top)
- basic.destroy()
- waitForRendering(top)
}
}
@@ -114,12 +110,12 @@ Item {
return;
constructCommon()
+ if (common.shadowsSupported === false)
+ return;
+
compare(common.selectionMode, AbstractGraph3D.SelectionItem, "selectionMode")
compare(common.shadowQuality, AbstractGraph3D.ShadowQualityMedium, "shadowQuality")
- if (common.shadowsSupported === true)
- compare(common.msaaSamples, 4, "msaaSamples")
- else
- compare(common.msaaSamples, 0, "msaaSamples")
+ compare(common.msaaSamples, 4, "msaaSamples")
compare(common.theme.type, Theme3D.ThemeQt, "theme")
compare(common.renderingMode, AbstractGraph3D.RenderIndirect, "renderingMode")
compare(common.measureFps, false, "measureFps")
@@ -140,17 +136,14 @@ Item {
}
function test_2_change_common() {
- if (Qt.platform.os === "android")
+ if (Qt.platform.os === "android" || common.shadowsSupported === false)
return;
common.selectionMode = AbstractGraph3D.SelectionNone
common.shadowQuality = AbstractGraph3D.ShadowQualitySoftHigh
- compare(common.shadowQuality, AbstractGraph3D.ShadowQualitySoftHigh, "shadowQuality")
common.msaaSamples = 8
- if (common.shadowsSupported === true)
- compare(common.msaaSamples, 8, "msaaSamples")
- else
- compare(common.msaaSamples, 0, "msaaSamples")
+ compare(common.shadowQuality, AbstractGraph3D.ShadowQualitySoftHigh, "shadowQuality")
+ compare(common.msaaSamples, 8, "msaaSamples")
common.theme.type = Theme3D.ThemeRetro
common.renderingMode = AbstractGraph3D.RenderDirectToBackground_NoClear
common.measureFps = true
@@ -183,20 +176,45 @@ Item {
waitForRendering(top)
}
- function test_3_common_initialized() {
+ function test_3_change_invalid_common() {
+ if (Qt.platform.os === "android" || common.shadowsSupported === false)
+ return;
+
+ common.selectionMode = AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionColumn | AbstractGraph3D.SelectionSlice
+ common.theme.type = -2
+ common.renderingMode = -1
+ common.measureFps = false
+ common.orthoProjection = false
+ common.aspectRatio = -1.0
+ common.polar = false
+ common.horizontalAspectRatio = -2
+ common.reflection = false
+ common.reflectivity = -1.0
+ compare(common.selectionMode, AbstractGraph3D.SelectionNone, "selectionMode")
+ compare(common.theme.type, Theme3D.ThemeRetro, "theme")
+ compare(common.renderingMode, AbstractGraph3D.RenderDirectToBackground_NoClear, "renderingMode")
+ compare(common.aspectRatio, 1.0, "aspectRatio")
+ compare(common.horizontalAspectRatio, 1.0, "horizontalAspectRatio")
+ compare(common.reflectivity, 1.0, "reflectivity")
+ waitForRendering(top)
+ }
+ }
+
+ TestCase {
+ name: "Scatter3D Common Initialized"
+ when: windowShown
+
+ function test_1_common_initialized() {
if (Qt.platform.os === "android")
return;
constructCommonInit()
+ if (common_init.shadowsSupported === false)
+ return;
compare(common_init.selectionMode, AbstractGraph3D.SelectionNone, "selectionMode")
- if (common_init.shadowsSupported === true) {
- tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityLow)
- compare(common_init.msaaSamples, 2, "msaaSamples")
- } else {
- tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityNone)
- compare(common_init.msaaSamples, 0, "msaaSamples")
- }
+ tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityLow)
+ compare(common_init.msaaSamples, 2, "msaaSamples")
compare(common_init.theme.type, Theme3D.ThemeUserDefined, "theme")
compare(common_init.renderingMode, AbstractGraph3D.RenderIndirect, "renderingMode")
compare(common_init.measureFps, true, "measureFps")
@@ -212,31 +230,6 @@ Item {
compare(common_init.locale, Qt.locale("UK"), "locale")
compare(common_init.margin, 0.2, "margin")
waitForRendering(top)
- common_init.destroy();
- waitForRendering(top)
- }
-
- function test_4_change_invalid_common() {
- if (Qt.platform.os === "android")
- return;
-
- common.selectionMode = AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionColumn | AbstractGraph3D.SelectionSlice
- common.theme.type = -2
- common.renderingMode = -1
- common.measureFps = false
- common.orthoProjection = false
- common.aspectRatio = -1.0
- common.polar = false
- common.horizontalAspectRatio = -2
- common.reflection = false
- common.reflectivity = -1.0
- compare(common.selectionMode, AbstractGraph3D.SelectionNone, "selectionMode")
- compare(common.theme.type, Theme3D.ThemeRetro, "theme")
- compare(common.renderingMode, AbstractGraph3D.RenderDirectToBackground_NoClear, "renderingMode")
- compare(common.aspectRatio, 1.0, "aspectRatio")
- compare(common.horizontalAspectRatio, 1.0, "horizontalAspectRatio")
- compare(common.reflectivity, 1.0, "reflectivity")
- waitForRendering(top)
}
}
}
diff --git a/tests/auto/qmltest/surface3d/tst_basic.qml b/tests/auto/qmltest/surface3d/tst_basic.qml
index 3716cdd6..2979d6d5 100644
--- a/tests/auto/qmltest/surface3d/tst_basic.qml
+++ b/tests/auto/qmltest/surface3d/tst_basic.qml
@@ -88,8 +88,6 @@ Item {
compare(empty.axisZ.type, AbstractAxis3D.AxisTypeValue)
compare(empty.axisY.type, AbstractAxis3D.AxisTypeValue)
waitForRendering(top)
- empty.destroy()
- waitForRendering(top)
}
}
@@ -108,8 +106,6 @@ Item {
basic.flipHorizontalGrid = false
compare(basic.flipHorizontalGrid, false, "flipHorizontalGrid")
waitForRendering(top)
- basic.destroy()
- waitForRendering(top)
}
}
@@ -122,12 +118,12 @@ Item {
return;
constructCommon()
+ if (common.shadowsSupported === false)
+ return;
+
compare(common.selectionMode, AbstractGraph3D.SelectionItem, "selectionMode")
compare(common.shadowQuality, AbstractGraph3D.ShadowQualityMedium, "shadowQuality")
- if (common.shadowsSupported === true)
- compare(common.msaaSamples, 4, "msaaSamples")
- else
- compare(common.msaaSamples, 0, "msaaSamples")
+ compare(common.msaaSamples, 4, "msaaSamples")
compare(common.theme.type, Theme3D.ThemeQt, "theme")
compare(common.renderingMode, AbstractGraph3D.RenderIndirect, "renderingMode")
compare(common.measureFps, false, "measureFps")
@@ -148,17 +144,14 @@ Item {
}
function test_2_change_common() {
- if (Qt.platform.os === "android")
+ if (Qt.platform.os === "android" || common.shadowsSupported === false)
return;
common.selectionMode = AbstractGraph3D.SelectionItem | AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionSlice
common.shadowQuality = AbstractGraph3D.ShadowQualitySoftHigh
- compare(common.shadowQuality, AbstractGraph3D.ShadowQualitySoftHigh, "shadowQuality")
common.msaaSamples = 8
- if (common.shadowsSupported === true)
- compare(common.msaaSamples, 8, "msaaSamples")
- else
- compare(common.msaaSamples, 0, "msaaSamples")
+ compare(common.shadowQuality, AbstractGraph3D.ShadowQualitySoftHigh, "shadowQuality")
+ compare(common.msaaSamples, 8, "msaaSamples")
common.theme.type = Theme3D.ThemeRetro
common.renderingMode = AbstractGraph3D.RenderDirectToBackground_NoClear
common.measureFps = true
@@ -191,20 +184,45 @@ Item {
waitForRendering(top)
}
- function test_3_common_initialized() {
+ function test_3_change_invalid_common() {
+ if (Qt.platform.os === "android" || common.shadowsSupported === false)
+ return;
+
+ common.selectionMode = AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionColumn | AbstractGraph3D.SelectionSlice
+ common.theme.type = -2
+ common.renderingMode = -1
+ common.measureFps = false
+ common.orthoProjection = false
+ common.aspectRatio = -1.0
+ common.polar = false
+ common.horizontalAspectRatio = -2
+ common.reflection = false
+ common.reflectivity = -1.0
+ compare(common.selectionMode, AbstractGraph3D.SelectionItem | AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionSlice, "selectionMode")
+ compare(common.theme.type, Theme3D.ThemeRetro, "theme")
+ compare(common.renderingMode, AbstractGraph3D.RenderDirectToBackground_NoClear, "renderingMode")
+ compare(common.aspectRatio, 1.0, "aspectRatio")
+ compare(common.horizontalAspectRatio, 1.0, "horizontalAspectRatio")
+ compare(common.reflectivity, 1.0, "reflectivity")
+ waitForRendering(top)
+ }
+ }
+
+ TestCase {
+ name: "Surface3D Common Initialized"
+ when: windowShown
+
+ function test_1_common_initialized() {
if (Qt.platform.os === "android")
return;
constructCommonInit()
+ if (common_init.shadowsSupported === false)
+ return;
compare(common_init.selectionMode, AbstractGraph3D.SelectionNone, "selectionMode")
- if (common_init.shadowsSupported === true) {
- tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityLow)
- compare(common_init.msaaSamples, 2, "msaaSamples")
- } else {
- tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityNone)
- compare(common_init.msaaSamples, 0, "msaaSamples")
- }
+ tryCompare(common_init, "shadowQuality", AbstractGraph3D.ShadowQualityLow)
+ compare(common_init.msaaSamples, 2, "msaaSamples")
compare(common_init.theme.type, Theme3D.ThemeUserDefined, "theme")
compare(common_init.renderingMode, AbstractGraph3D.RenderIndirect, "renderingMode")
compare(common_init.measureFps, true, "measureFps")
@@ -220,31 +238,6 @@ Item {
compare(common_init.locale, Qt.locale("UK"), "locale")
compare(common_init.margin, 0.2, "margin")
waitForRendering(top)
- common_init.destroy();
- waitForRendering(top)
- }
-
- function test_4_change_invalid_common() {
- if (Qt.platform.os === "android")
- return;
-
- common.selectionMode = AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionColumn | AbstractGraph3D.SelectionSlice
- common.theme.type = -2
- common.renderingMode = -1
- common.measureFps = false
- common.orthoProjection = false
- common.aspectRatio = -1.0
- common.polar = false
- common.horizontalAspectRatio = -2
- common.reflection = false
- common.reflectivity = -1.0
- compare(common.selectionMode, AbstractGraph3D.SelectionItem | AbstractGraph3D.SelectionRow | AbstractGraph3D.SelectionSlice, "selectionMode")
- compare(common.theme.type, Theme3D.ThemeRetro, "theme")
- compare(common.renderingMode, AbstractGraph3D.RenderDirectToBackground_NoClear, "renderingMode")
- compare(common.aspectRatio, 1.0, "aspectRatio")
- compare(common.horizontalAspectRatio, 1.0, "horizontalAspectRatio")
- compare(common.reflectivity, 1.0, "reflectivity")
- waitForRendering(top)
}
}
}