summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArtem Dyomin <artem.dyomin@qt.io>2022-10-28 10:06:52 +0200
committerArtem Dyomin <artem.dyomin@qt.io>2022-10-31 12:13:21 +0200
commitecf7bd03ec31914059f3caeb198fedba1a40dea9 (patch)
treea29787dd6434b5a0b60ea8bcaf886b9615d38370
parent8d8000635905239c357ffc1a0810666a05f20992 (diff)
Skip some integration tests on macos CI
Some tests are skipped due to their crashes or UB on CI which doesn't have audio, and metal/opengl drawing. Related commit turns on mac os tests. See it by the gerrit topic. See tests results here: https://testresults.qt.io/coin/integration/qt/qtmultimedia/tasks/web_qt_qtmultimedia_1666965369638 Change-Id: Ib368df064344ab05ea0d85e6e7dfa93112e19d9d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
-rw-r--r--tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp10
-rw-r--r--tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp12
-rw-r--r--tests/auto/unit/multimediawidgets/qvideowidget/tst_qvideowidget.cpp12
3 files changed, 26 insertions, 8 deletions
diff --git a/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp b/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
index c9e0ae31c..e4554084a 100644
--- a/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
+++ b/tests/auto/integration/qaudiodevice/tst_qaudiodevice.cpp
@@ -20,7 +20,6 @@ public:
private slots:
void initTestCase();
- void cleanupTestCase();
void checkAvailableDefaultInput();
void checkAvailableDefaultOutput();
void channels();
@@ -34,7 +33,7 @@ private slots:
void equalityOperator();
private:
- QAudioDevice* device;
+ std::unique_ptr<QAudioDevice> device;
};
void tst_QAudioDevice::initTestCase()
@@ -44,15 +43,10 @@ void tst_QAudioDevice::initTestCase()
if (devices.size() == 0) {
QSKIP("NOTE: no audio output device found, no tests will be performed");
} else {
- device = new QAudioDevice(devices.at(0));
+ device = std::make_unique<QAudioDevice>(devices.at(0));
}
}
-void tst_QAudioDevice::cleanupTestCase()
-{
- delete device;
-}
-
void tst_QAudioDevice::checkAvailableDefaultInput()
{
// Only perform tests if audio input device exists!
diff --git a/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp b/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp
index ed9f2caa6..9f262f1fc 100644
--- a/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp
+++ b/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp
@@ -1109,6 +1109,12 @@ void tst_QMediaPlayerBackend::multiplePlaybackRateChangingStressTest()
if (localVideoFile3ColorsWithSound.isEmpty())
QSKIP("Video format is not supported");
+#ifdef Q_OS_MACOS
+ if (qEnvironmentVariable("QTEST_ENVIRONMENT").toLower() == "ci")
+ QSKIP("SKIP on macOS CI since multiple fake drawing on macOS CI platform causes UB. To be "
+ "investigated.");
+#endif
+
TestVideoSink surface(false);
QAudioOutput output;
QMediaPlayer player;
@@ -1282,6 +1288,12 @@ void tst_QMediaPlayerBackend::playbackRateChanging()
if (localVideoFile3ColorsWithSound.isEmpty())
QSKIP("Video format is not supported");
+#ifdef Q_OS_MACOS
+ if (qEnvironmentVariable("QTEST_ENVIRONMENT").toLower() == "ci")
+ QSKIP("SKIP on macOS CI since multiple fake drawing on macOS CI platform causes UB. To be "
+ "investigated.");
+#endif
+
TestVideoSink surface(false);
QAudioOutput output;
QMediaPlayer player;
diff --git a/tests/auto/unit/multimediawidgets/qvideowidget/tst_qvideowidget.cpp b/tests/auto/unit/multimediawidgets/qvideowidget/tst_qvideowidget.cpp
index 63e7f01dc..3625a18c8 100644
--- a/tests/auto/unit/multimediawidgets/qvideowidget/tst_qvideowidget.cpp
+++ b/tests/auto/unit/multimediawidgets/qvideowidget/tst_qvideowidget.cpp
@@ -22,6 +22,9 @@ QT_USE_NAMESPACE
class tst_QVideoWidget : public QObject
{
Q_OBJECT
+public slots:
+ void initTestCase();
+
private slots:
void nullObject();
@@ -57,6 +60,15 @@ public:
}
};
+void tst_QVideoWidget::initTestCase()
+{
+#ifdef Q_OS_MACOS
+ if (qEnvironmentVariable("QTEST_ENVIRONMENT").toLower() == "ci")
+ QSKIP("SKIP on macOS CI since metal is not supported, otherwise it often crashes. To be "
+ "fixed.");
+#endif
+}
+
void tst_QVideoWidget::nullObject()
{
QtTestVideoWidget widget;