summaryrefslogtreecommitdiffstats
path: root/tests/benchmarks/corelib
diff options
context:
space:
mode:
Diffstat (limited to 'tests/benchmarks/corelib')
-rw-r--r--tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro5
-rw-r--r--tests/benchmarks/corelib/io/qdir/10000/10000.pro6
-rw-r--r--tests/benchmarks/corelib/io/qdir/tree/tree.pro6
-rw-r--r--tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro5
-rw-r--r--tests/benchmarks/corelib/io/qfile/qfile.pro3
-rw-r--r--tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro6
-rw-r--r--tests/benchmarks/corelib/io/qiodevice/qiodevice.pro6
-rw-r--r--tests/benchmarks/corelib/io/qprocess/test/test.pro5
-rw-r--r--tests/benchmarks/corelib/io/qprocess/testProcessLoopback/testProcessLoopback.pro4
-rw-r--r--tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro6
-rw-r--r--tests/benchmarks/corelib/io/qtextstream/qtextstream.pro6
-rw-r--r--tests/benchmarks/corelib/io/qurl/qurl.pro3
-rw-r--r--tests/benchmarks/corelib/json/json.pro3
-rw-r--r--tests/benchmarks/corelib/kernel/events/events.pro4
-rw-r--r--tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro4
-rw-r--r--tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro3
-rw-r--r--tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro6
-rw-r--r--tests/benchmarks/corelib/kernel/qobject/qobject.pro4
-rw-r--r--tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro11
-rw-r--r--tests/benchmarks/corelib/kernel/qvariant/qvariant.pro7
-rw-r--r--tests/benchmarks/corelib/mimetypes/qmimedatabase/qmimedatabase.pro2
-rw-r--r--tests/benchmarks/corelib/plugin/quuid/quuid.pro5
-rw-r--r--tests/benchmarks/corelib/text/qbytearray/qbytearray.pro6
-rw-r--r--tests/benchmarks/corelib/text/qchar/qchar.pro4
-rw-r--r--tests/benchmarks/corelib/text/qlocale/qlocale.pro3
-rw-r--r--tests/benchmarks/corelib/text/qregexp/qregexp.pro6
-rw-r--r--tests/benchmarks/corelib/text/qstring/qstring.pro5
-rw-r--r--tests/benchmarks/corelib/text/qstringbuilder/qstringbuilder.pro10
-rw-r--r--tests/benchmarks/corelib/text/qstringlist/qstringlist.pro5
-rw-r--r--tests/benchmarks/corelib/thread/qmutex/qmutex.pro5
-rw-r--r--tests/benchmarks/corelib/thread/qreadwritelock/qreadwritelock.pro7
-rw-r--r--tests/benchmarks/corelib/thread/qthreadpool/qthreadpool.pro5
-rw-r--r--tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro5
-rw-r--r--tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro4
-rw-r--r--tests/benchmarks/corelib/time/qdate/qdate.pro3
-rw-r--r--tests/benchmarks/corelib/time/qdatetime/qdatetime.pro3
-rw-r--r--tests/benchmarks/corelib/time/qtimezone/main.cpp122
-rw-r--r--tests/benchmarks/corelib/time/qtimezone/qtimezone.pro3
-rw-r--r--tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro4
-rw-r--r--tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro4
-rw-r--r--tests/benchmarks/corelib/tools/qalgorithms/qalgorithms.pro4
-rw-r--r--tests/benchmarks/corelib/tools/qcontiguouscache/qcontiguouscache.pro9
-rw-r--r--tests/benchmarks/corelib/tools/qcryptographichash/qcryptographichash.pro7
-rw-r--r--tests/benchmarks/corelib/tools/qhash/qhash.pro5
-rw-r--r--tests/benchmarks/corelib/tools/qlist/qlist.pro3
-rw-r--r--tests/benchmarks/corelib/tools/qmap/qmap.pro5
-rw-r--r--tests/benchmarks/corelib/tools/qrect/qrect.pro5
-rw-r--r--tests/benchmarks/corelib/tools/qringbuffer/qringbuffer.pro5
-rw-r--r--tests/benchmarks/corelib/tools/qset/qset.pro5
-rw-r--r--tests/benchmarks/corelib/tools/qstack/qstack.pro5
-rw-r--r--tests/benchmarks/corelib/tools/qvector/qvector.pro7
51 files changed, 253 insertions, 121 deletions
diff --git a/tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro b/tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro
index 5ee577c256..7d29c6bfdd 100644
--- a/tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro
+++ b/tests/benchmarks/corelib/codecs/qtextcodec/qtextcodec.pro
@@ -1,6 +1,7 @@
-TARGET = tst_bench_qtextcodec
+CONFIG += benchmark
QT = core testlib
+
+TARGET = tst_bench_qtextcodec
SOURCES += main.cpp
TESTDATA = utf-8.txt
-
diff --git a/tests/benchmarks/corelib/io/qdir/10000/10000.pro b/tests/benchmarks/corelib/io/qdir/10000/10000.pro
index 2e83dad071..52325f314f 100644
--- a/tests/benchmarks/corelib/io/qdir/10000/10000.pro
+++ b/tests/benchmarks/corelib/io/qdir/10000/10000.pro
@@ -1,6 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qdir_10000
+CONFIG += benchmark
+QT = core testlib
+TARGET = tst_bench_qdir_10000
SOURCES += bench_qdir_10000.cpp
-
-QT = core testlib
diff --git a/tests/benchmarks/corelib/io/qdir/tree/tree.pro b/tests/benchmarks/corelib/io/qdir/tree/tree.pro
index 2998a13b57..90ddd23345 100644
--- a/tests/benchmarks/corelib/io/qdir/tree/tree.pro
+++ b/tests/benchmarks/corelib/io/qdir/tree/tree.pro
@@ -1,7 +1,7 @@
TEMPLATE = app
-TARGET = bench_qdir_tree
+CONFIG += benchmark
+QT = core testlib
+TARGET = bench_qdir_tree
SOURCES += bench_qdir_tree.cpp
RESOURCES += bench_qdir_tree.qrc
-
-QT = core testlib
diff --git a/tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro b/tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro
index 609a578321..0921b8424e 100644
--- a/tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro
+++ b/tests/benchmarks/corelib/io/qdiriterator/qdiriterator.pro
@@ -1,8 +1,6 @@
-TARGET = tst_bench_qdiriterator
-
+CONFIG += benchmark
QT = core testlib
-CONFIG += release
# Enable c++17 support for std::filesystem
qtConfig(cxx17_filesystem) {
CONFIG += c++17
@@ -10,5 +8,6 @@ qtConfig(cxx17_filesystem) {
QMAKE_LFLAGS += -lstdc++fs
}
+TARGET = tst_bench_qdiriterator
SOURCES += main.cpp qfilesystemiterator.cpp
HEADERS += qfilesystemiterator.h
diff --git a/tests/benchmarks/corelib/io/qfile/qfile.pro b/tests/benchmarks/corelib/io/qfile/qfile.pro
index 5f7b9af73f..a882c4ea61 100644
--- a/tests/benchmarks/corelib/io/qfile/qfile.pro
+++ b/tests/benchmarks/corelib/io/qfile/qfile.pro
@@ -1,6 +1,7 @@
TEMPLATE = app
-TARGET = tst_bench_qfile
+CONFIG += benchmark
QT = core core-private testlib
win32: DEFINES+= _CRT_SECURE_NO_WARNINGS
+TARGET = tst_bench_qfile
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro b/tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro
index 42e8708b02..9c97bfc84a 100644
--- a/tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro
+++ b/tests/benchmarks/corelib/io/qfileinfo/qfileinfo.pro
@@ -1,9 +1,7 @@
TEMPLATE = app
-TARGET = tst_bench_qfileinfo
-
+CONFIG += benchmark
QT -= gui
QT += core-private testlib
-CONFIG += release
-
+TARGET = tst_bench_qfileinfo
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qiodevice/qiodevice.pro b/tests/benchmarks/corelib/io/qiodevice/qiodevice.pro
index 7937436e13..febe6e87f9 100644
--- a/tests/benchmarks/corelib/io/qiodevice/qiodevice.pro
+++ b/tests/benchmarks/corelib/io/qiodevice/qiodevice.pro
@@ -1,8 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qiodevice
-
+CONFIG += benchmark
QT = core testlib
-CONFIG += release
-
+TARGET = tst_bench_qiodevice
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qprocess/test/test.pro b/tests/benchmarks/corelib/io/qprocess/test/test.pro
index b665525b17..e7e8e01aef 100644
--- a/tests/benchmarks/corelib/io/qprocess/test/test.pro
+++ b/tests/benchmarks/corelib/io/qprocess/test/test.pro
@@ -1,4 +1,5 @@
+CONFIG += benchmark
+QT = core core-private testlib
+
TARGET = ../tst_bench_qprocess
SOURCES += ../tst_bench_qprocess.cpp
-
-QT = core core-private testlib
diff --git a/tests/benchmarks/corelib/io/qprocess/testProcessLoopback/testProcessLoopback.pro b/tests/benchmarks/corelib/io/qprocess/testProcessLoopback/testProcessLoopback.pro
index a0230e1cb8..1f56ad6ee6 100644
--- a/tests/benchmarks/corelib/io/qprocess/testProcessLoopback/testProcessLoopback.pro
+++ b/tests/benchmarks/corelib/io/qprocess/testProcessLoopback/testProcessLoopback.pro
@@ -1,5 +1,7 @@
-SOURCES = main.cpp
+CONFIG += benchmark
CONFIG -= qt
CONFIG += cmdline
winrt: QMAKE_LFLAGS += /ENTRY:mainCRTStartup
+
+SOURCES = main.cpp
DESTDIR = ./
diff --git a/tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro b/tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro
index 758930c139..b6064e1f91 100644
--- a/tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro
+++ b/tests/benchmarks/corelib/io/qtemporaryfile/qtemporaryfile.pro
@@ -1,8 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qtemporaryfile
-
+CONFIG += benchmark
QT = core testlib
-CONFIG += release
-
+TARGET = tst_bench_qtemporaryfile
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qtextstream/qtextstream.pro b/tests/benchmarks/corelib/io/qtextstream/qtextstream.pro
index e8170319f2..fb45d05bc9 100644
--- a/tests/benchmarks/corelib/io/qtextstream/qtextstream.pro
+++ b/tests/benchmarks/corelib/io/qtextstream/qtextstream.pro
@@ -1,8 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qtextstream
-
+CONFIG += benchmark
QT = core testlib
-CONFIG += release
-
+TARGET = tst_bench_qtextstream
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/io/qurl/qurl.pro b/tests/benchmarks/corelib/io/qurl/qurl.pro
index 52f7bdc8b6..0e10e32a22 100644
--- a/tests/benchmarks/corelib/io/qurl/qurl.pro
+++ b/tests/benchmarks/corelib/io/qurl/qurl.pro
@@ -1,6 +1,7 @@
TEMPLATE = app
-TARGET = tst_qurl
+CONFIG += benchmark
QT = core testlib
win32: DEFINES+= _CRT_SECURE_NO_WARNINGS
+TARGET = tst_qurl
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/json/json.pro b/tests/benchmarks/corelib/json/json.pro
index 004f4b123e..8f9e515cb9 100644
--- a/tests/benchmarks/corelib/json/json.pro
+++ b/tests/benchmarks/corelib/json/json.pro
@@ -1,7 +1,8 @@
-TARGET = tst_bench_qtbinaryjson
QT = core testlib
+CONFIG += benchmark
CONFIG -= app_bundle
+TARGET = tst_bench_qtbinaryjson
SOURCES += tst_bench_qtbinaryjson.cpp
TESTDATA = numbers.json test.json
diff --git a/tests/benchmarks/corelib/kernel/events/events.pro b/tests/benchmarks/corelib/kernel/events/events.pro
index 798a880e5b..1381bb001e 100644
--- a/tests/benchmarks/corelib/kernel/events/events.pro
+++ b/tests/benchmarks/corelib/kernel/events/events.pro
@@ -1,6 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_events
-
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_events
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro b/tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro
index 8bf8487a5f..5572f06924 100644
--- a/tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro
+++ b/tests/benchmarks/corelib/kernel/qcoreapplication/qcoreapplication.pro
@@ -1,6 +1,6 @@
+TEMPLATE = app
+CONFIG += benchmark
QT = core testlib
-TEMPLATE = app
TARGET = tst_bench_qcoreapplication
-
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro b/tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro
index 47d2acb9b1..0d595ed4da 100644
--- a/tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro
+++ b/tests/benchmarks/corelib/kernel/qmetaobject/qmetaobject.pro
@@ -1,5 +1,6 @@
TEMPLATE = app
+CONFIG += benchmark
QT += widgets testlib
-TARGET = tst_bench_qmetaobject
+TARGET = tst_bench_qmetaobject
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro b/tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro
index 83d0708b60..ffd36ad202 100644
--- a/tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro
+++ b/tests/benchmarks/corelib/kernel/qmetatype/qmetatype.pro
@@ -1,6 +1,6 @@
-QT = core testlib
TEMPLATE = app
-TARGET = tst_bench_qmetatype
+CONFIG += benchmark
+QT = core testlib
+TARGET = tst_bench_qmetatype
SOURCES += tst_qmetatype.cpp
-
diff --git a/tests/benchmarks/corelib/kernel/qobject/qobject.pro b/tests/benchmarks/corelib/kernel/qobject/qobject.pro
index e611eff0a2..eb1d8a2daa 100644
--- a/tests/benchmarks/corelib/kernel/qobject/qobject.pro
+++ b/tests/benchmarks/corelib/kernel/qobject/qobject.pro
@@ -1,7 +1,7 @@
+TEMPLATE = app
+CONFIG += benchmark
QT += widgets testlib
-TEMPLATE = app
TARGET = tst_bench_qobject
-
HEADERS += object.h
SOURCES += main.cpp object.cpp
diff --git a/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro
index e127ba1934..3d4e48e76c 100644
--- a/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro
+++ b/tests/benchmarks/corelib/kernel/qtimer_vs_qmetaobject/qtimer_vs_qmetaobject.pro
@@ -1,10 +1,7 @@
TEMPLATE = app
-TARGET = qtimer_vs_qmetaobject
-INCLUDEPATH += .
-
-CONFIG += release
-#CONFIG += debug
-
+CONFIG += benchmark
+QT = core testlib
+INCLUDEPATH += .
+TARGET = qtimer_vs_qmetaobject
SOURCES += tst_qtimer_vs_qmetaobject.cpp
-QT = core testlib
diff --git a/tests/benchmarks/corelib/kernel/qvariant/qvariant.pro b/tests/benchmarks/corelib/kernel/qvariant/qvariant.pro
index 8a8e9f25d3..2616ae78ea 100644
--- a/tests/benchmarks/corelib/kernel/qvariant/qvariant.pro
+++ b/tests/benchmarks/corelib/kernel/qvariant/qvariant.pro
@@ -1,9 +1,6 @@
-TARGET = tst_bench_qvariant
+CONFIG += benchmark
QT += testlib
!qtHaveModule(gui): QT -= gui
-CONFIG += release
-#CONFIG += debug
-
-
+TARGET = tst_bench_qvariant
SOURCES += tst_qvariant.cpp
diff --git a/tests/benchmarks/corelib/mimetypes/qmimedatabase/qmimedatabase.pro b/tests/benchmarks/corelib/mimetypes/qmimedatabase/qmimedatabase.pro
index fe55b98e54..3d218554d3 100644
--- a/tests/benchmarks/corelib/mimetypes/qmimedatabase/qmimedatabase.pro
+++ b/tests/benchmarks/corelib/mimetypes/qmimedatabase/qmimedatabase.pro
@@ -1,5 +1,5 @@
+CONFIG += benchmark
QT = core testlib
TARGET = tst_bench_qmimedatabase
SOURCES = main.cpp
-
diff --git a/tests/benchmarks/corelib/plugin/quuid/quuid.pro b/tests/benchmarks/corelib/plugin/quuid/quuid.pro
index 8f88bb85b4..5179c0cc40 100644
--- a/tests/benchmarks/corelib/plugin/quuid/quuid.pro
+++ b/tests/benchmarks/corelib/plugin/quuid/quuid.pro
@@ -1,5 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_quuid
+CONFIG += benchmark
+QT = core testlib
+TARGET = tst_bench_quuid
SOURCES += tst_quuid.cpp
-QT = core testlib
diff --git a/tests/benchmarks/corelib/text/qbytearray/qbytearray.pro b/tests/benchmarks/corelib/text/qbytearray/qbytearray.pro
index cf28b0247f..25af9512d4 100644
--- a/tests/benchmarks/corelib/text/qbytearray/qbytearray.pro
+++ b/tests/benchmarks/corelib/text/qbytearray/qbytearray.pro
@@ -1,7 +1,7 @@
TEMPLATE = app
-TARGET = tst_bench_qbytearray
-
+CONFIG += benchmark
QT = core testlib
-TESTDATA += main.cpp
+TARGET = tst_bench_qbytearray
SOURCES += main.cpp
+TESTDATA += main.cpp
diff --git a/tests/benchmarks/corelib/text/qchar/qchar.pro b/tests/benchmarks/corelib/text/qchar/qchar.pro
index 80a9861f48..902acbb831 100644
--- a/tests/benchmarks/corelib/text/qchar/qchar.pro
+++ b/tests/benchmarks/corelib/text/qchar/qchar.pro
@@ -1,3 +1,5 @@
-TARGET = tst_bench_qchar
+CONFIG += benchmark
QT = core testlib
+
+TARGET = tst_bench_qchar
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/text/qlocale/qlocale.pro b/tests/benchmarks/corelib/text/qlocale/qlocale.pro
index e56bbe0341..a39a20a677 100644
--- a/tests/benchmarks/corelib/text/qlocale/qlocale.pro
+++ b/tests/benchmarks/corelib/text/qlocale/qlocale.pro
@@ -1,4 +1,5 @@
-TARGET = tst_bench_qlocale
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_qlocale
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/text/qregexp/qregexp.pro b/tests/benchmarks/corelib/text/qregexp/qregexp.pro
index f64ae781a2..c04c13060b 100644
--- a/tests/benchmarks/corelib/text/qregexp/qregexp.pro
+++ b/tests/benchmarks/corelib/text/qregexp/qregexp.pro
@@ -1,8 +1,9 @@
TEMPLATE = app
-TARGET = tst_bench_qregexp
+CONFIG += benchmark
+CONFIG += exceptions
QT = core testlib
-CONFIG += release exceptions
+TARGET = tst_bench_qregexp
SOURCES += main.cpp
RESOURCES += qregexp.qrc
@@ -17,4 +18,3 @@ qtHaveModule(script):!pcre {
LIBS += -lboost_regex
}
}
-
diff --git a/tests/benchmarks/corelib/text/qstring/qstring.pro b/tests/benchmarks/corelib/text/qstring/qstring.pro
index 9f5e34b915..e25431b983 100644
--- a/tests/benchmarks/corelib/text/qstring/qstring.pro
+++ b/tests/benchmarks/corelib/text/qstring/qstring.pro
@@ -1,5 +1,6 @@
-TARGET = tst_bench_qstring
+CONFIG += benchmark
QT -= gui
QT += core testlib
-SOURCES += main.cpp
+TARGET = tst_bench_qstring
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/text/qstringbuilder/qstringbuilder.pro b/tests/benchmarks/corelib/text/qstringbuilder/qstringbuilder.pro
index fa4cbe3c13..91421b3b2c 100644
--- a/tests/benchmarks/corelib/text/qstringbuilder/qstringbuilder.pro
+++ b/tests/benchmarks/corelib/text/qstringbuilder/qstringbuilder.pro
@@ -1,11 +1,9 @@
TEMPLATE = app
-TARGET = tst_bench_qstringbuilder
+CONFIG += benchmark
+QT = core testlib
QMAKE_CXXFLAGS += -g
QMAKE_CFLAGS += -g
-QT = core testlib
-
-CONFIG += release
-
-SOURCES += main.cpp
+TARGET = tst_bench_qstringbuilder
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/text/qstringlist/qstringlist.pro b/tests/benchmarks/corelib/text/qstringlist/qstringlist.pro
index 2e7ae058f7..a27bf0a6ab 100644
--- a/tests/benchmarks/corelib/text/qstringlist/qstringlist.pro
+++ b/tests/benchmarks/corelib/text/qstringlist/qstringlist.pro
@@ -1,6 +1,5 @@
-TARGET = tst_bench_qstringlist
-CONFIG -= debug
-CONFIG += release
CONFIG += benchmark
QT = core testlib
+
+TARGET = tst_bench_qstringlist
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/thread/qmutex/qmutex.pro b/tests/benchmarks/corelib/thread/qmutex/qmutex.pro
index ec87f60919..a0b2ddeaa9 100644
--- a/tests/benchmarks/corelib/thread/qmutex/qmutex.pro
+++ b/tests/benchmarks/corelib/thread/qmutex/qmutex.pro
@@ -1,5 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qmutex
+CONFIG += benchmark
QT = core testlib
-SOURCES += tst_qmutex.cpp
+TARGET = tst_bench_qmutex
+SOURCES += tst_qmutex.cpp
diff --git a/tests/benchmarks/corelib/thread/qreadwritelock/qreadwritelock.pro b/tests/benchmarks/corelib/thread/qreadwritelock/qreadwritelock.pro
index a1827d0276..7c36067cb7 100644
--- a/tests/benchmarks/corelib/thread/qreadwritelock/qreadwritelock.pro
+++ b/tests/benchmarks/corelib/thread/qreadwritelock/qreadwritelock.pro
@@ -1,7 +1,8 @@
TEMPLATE = app
-TARGET = tst_bench_qreadwritelock
-QT = core-private testlib
-SOURCES += tst_qreadwritelock.cpp
+CONFIG += benchmark
CONFIG += c++14 # for std::shared_timed_mutex
CONFIG += c++1z # for std::shared_mutex
+QT = core-private testlib
+TARGET = tst_bench_qreadwritelock
+SOURCES += tst_qreadwritelock.cpp
diff --git a/tests/benchmarks/corelib/thread/qthreadpool/qthreadpool.pro b/tests/benchmarks/corelib/thread/qthreadpool/qthreadpool.pro
index 47e16e8b4d..303b3cef69 100644
--- a/tests/benchmarks/corelib/thread/qthreadpool/qthreadpool.pro
+++ b/tests/benchmarks/corelib/thread/qthreadpool/qthreadpool.pro
@@ -1,5 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qthreadpool
+CONFIG += benchmark
+QT = core testlib
+TARGET = tst_bench_qthreadpool
SOURCES += tst_qthreadpool.cpp
-QT = core testlib
diff --git a/tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro b/tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro
index 95afc951bc..3f62c4eb3c 100644
--- a/tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro
+++ b/tests/benchmarks/corelib/thread/qthreadstorage/qthreadstorage.pro
@@ -1,5 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qthreadstorage
+CONFIG += benchmark
+QT = core testlib
+TARGET = tst_bench_qthreadstorage
SOURCES += tst_qthreadstorage.cpp
-QT = core testlib
diff --git a/tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro b/tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro
index 43c7921a93..cc801bdc13 100644
--- a/tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro
+++ b/tests/benchmarks/corelib/thread/qwaitcondition/qwaitcondition.pro
@@ -1,4 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qwaitcondition
+CONFIG += benchmark
QT = core testlib
+
+TARGET = tst_bench_qwaitcondition
SOURCES += tst_qwaitcondition.cpp
diff --git a/tests/benchmarks/corelib/time/qdate/qdate.pro b/tests/benchmarks/corelib/time/qdate/qdate.pro
index a655917135..ecb229dfda 100644
--- a/tests/benchmarks/corelib/time/qdate/qdate.pro
+++ b/tests/benchmarks/corelib/time/qdate/qdate.pro
@@ -1,4 +1,5 @@
-TARGET = tst_bench_qdate
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_qdate
SOURCES += tst_bench_qdate.cpp
diff --git a/tests/benchmarks/corelib/time/qdatetime/qdatetime.pro b/tests/benchmarks/corelib/time/qdatetime/qdatetime.pro
index a85e7346c6..7133834ffc 100644
--- a/tests/benchmarks/corelib/time/qdatetime/qdatetime.pro
+++ b/tests/benchmarks/corelib/time/qdatetime/qdatetime.pro
@@ -1,4 +1,5 @@
-TARGET = tst_bench_qdatetime
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_qdatetime
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/time/qtimezone/main.cpp b/tests/benchmarks/corelib/time/qtimezone/main.cpp
index 65455a7261..133e6451bc 100644
--- a/tests/benchmarks/corelib/time/qtimezone/main.cpp
+++ b/tests/benchmarks/corelib/time/qtimezone/main.cpp
@@ -1,5 +1,6 @@
/****************************************************************************
**
+** Copyright (C) 2019 Crimson AS <info@crimson.no>
** Copyright (C) 2018 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author David Faure <david.faure@kdab.com>
** Contact: https://www.qt.io/licensing/
**
@@ -30,14 +31,57 @@
#include <QTest>
#include <qdebug.h>
+// Enable to test *every* zone, rather than a hand-picked few, in some _data() sets:
+// #define EXHAUSTIVE
+
class tst_QTimeZone : public QObject
{
Q_OBJECT
private Q_SLOTS:
void isTimeZoneIdAvailable();
+ void systemTimeZone();
+ void zoneByName_data();
+ void zoneByName();
+ void transitionList_data();
+ void transitionList();
+ void transitionsForward_data() { transitionList_data(); }
+ void transitionsForward();
+ void transitionsReverse_data() { transitionList_data(); }
+ void transitionsReverse();
};
+static QVector<QByteArray> enoughZones()
+{
+#ifdef EXHAUSTIVE
+ auto available = QTimeZone::availableTimeZoneIds();
+ QVector<QByteArray> result;
+ result.reserve(available.size() + 1);
+ for (conat auto &name : available)
+ result << name;
+#else
+ QVector<QByteArray> result{
+ QByteArray("UTC"),
+ // Those named overtly in tst_QDateTime:
+ QByteArray("Europe/Oslo"),
+ QByteArray("America/Vancouver"),
+ QByteArray("Europe/Berlin"),
+ QByteArray("America/Sao_Paulo"),
+ QByteArray("Pacific/Auckland"),
+ QByteArray("Australia/Eucla"),
+ QByteArray("Asia/Kathmandu"),
+ QByteArray("Pacific/Kiritimati"),
+ QByteArray("Pacific/Apia"),
+ QByteArray("UTC+12:00"),
+ QByteArray("Australia/Sydney"),
+ QByteArray("Asia/Singapore"),
+ QByteArray("Australia/Brisbane")
+ };
+#endif
+ result << QByteArray("Vulcan/ShiKahr"); // invalid: also worth testing
+ return result;
+}
+
void tst_QTimeZone::isTimeZoneIdAvailable()
{
const QList<QByteArray> available = QTimeZone::availableTimeZoneIds();
@@ -47,6 +91,84 @@ void tst_QTimeZone::isTimeZoneIdAvailable()
}
}
+void tst_QTimeZone::systemTimeZone()
+{
+ QBENCHMARK {
+ QTimeZone::systemTimeZone();
+ }
+}
+
+void tst_QTimeZone::zoneByName_data()
+{
+ QTest::addColumn<QByteArray>("name");
+
+ const auto names = enoughZones();
+ for (const auto &name : names)
+ QTest::newRow(name.constData()) << name;
+}
+
+void tst_QTimeZone::zoneByName()
+{
+ QFETCH(QByteArray, name);
+ QTimeZone zone;
+ QBENCHMARK {
+ zone = QTimeZone(name);
+ }
+ Q_UNUSED(zone);
+}
+
+void tst_QTimeZone::transitionList_data()
+{
+ QTest::addColumn<QByteArray>("name");
+ QTest::newRow("system") << QByteArray(); // Handled specially in the test.
+
+ const auto names = enoughZones();
+ for (const auto &name : names) {
+ QTimeZone zone(name);
+ if (zone.isValid() && zone.hasTransitions())
+ QTest::newRow(name.constData()) << name;
+ }
+}
+
+void tst_QTimeZone::transitionList()
+{
+ QFETCH(QByteArray, name);
+ const QTimeZone zone = name.isEmpty() ? QTimeZone::systemTimeZone() : QTimeZone(name);
+ const QDateTime early = QDate(1625, 6, 8).startOfDay(Qt::UTC); // Cassini's birth date
+ const QDateTime late // End of 32-bit signed time_t
+ = QDateTime::fromSecsSinceEpoch(std::numeric_limits<qint32>::max(), Qt::UTC);
+ QTimeZone::OffsetDataList seq;
+ QBENCHMARK {
+ seq = zone.transitions(early, late);
+ }
+ Q_UNUSED(seq);
+}
+
+void tst_QTimeZone::transitionsForward()
+{
+ QFETCH(QByteArray, name);
+ const QTimeZone zone = name.isEmpty() ? QTimeZone::systemTimeZone() : QTimeZone(name);
+ const QDateTime early = QDate(1625, 6, 8).startOfDay(Qt::UTC); // Cassini's birth date
+ QBENCHMARK {
+ QTimeZone::OffsetData tran = zone.nextTransition(early);
+ while (tran.atUtc.isValid())
+ tran = zone.nextTransition(tran.atUtc);
+ }
+}
+
+void tst_QTimeZone::transitionsReverse()
+{
+ QFETCH(QByteArray, name);
+ const QTimeZone zone = name.isEmpty() ? QTimeZone::systemTimeZone() : QTimeZone(name);
+ const QDateTime late // End of 32-bit signed time_t
+ = QDateTime::fromSecsSinceEpoch(std::numeric_limits<qint32>::max(), Qt::UTC);
+ QBENCHMARK {
+ QTimeZone::OffsetData tran = zone.previousTransition(late);
+ while (tran.atUtc.isValid())
+ tran = zone.previousTransition(tran.atUtc);
+ }
+}
+
QTEST_MAIN(tst_QTimeZone)
#include "main.moc"
diff --git a/tests/benchmarks/corelib/time/qtimezone/qtimezone.pro b/tests/benchmarks/corelib/time/qtimezone/qtimezone.pro
index d0531b568b..6ebee0faf3 100644
--- a/tests/benchmarks/corelib/time/qtimezone/qtimezone.pro
+++ b/tests/benchmarks/corelib/time/qtimezone/qtimezone.pro
@@ -1,4 +1,5 @@
-TARGET = tst_bench_qtimezone
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_qtimezone
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro b/tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro
index 49edcbee70..89da01b02e 100644
--- a/tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro
+++ b/tests/benchmarks/corelib/tools/containers-associative/containers-associative.pro
@@ -1,6 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_containers-associative
-
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_containers-associative
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro b/tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro
index 6f731cb6d8..509da95d22 100644
--- a/tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro
+++ b/tests/benchmarks/corelib/tools/containers-sequential/containers-sequential.pro
@@ -1,6 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_containers-sequential
-
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_containers-sequential
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qalgorithms/qalgorithms.pro b/tests/benchmarks/corelib/tools/qalgorithms/qalgorithms.pro
index f54f8320d4..0bde3ac66a 100644
--- a/tests/benchmarks/corelib/tools/qalgorithms/qalgorithms.pro
+++ b/tests/benchmarks/corelib/tools/qalgorithms/qalgorithms.pro
@@ -1,3 +1,5 @@
-TARGET = tst_bench_qalgorithms
+CONFIG += benchmark
QT = core testlib
+
+TARGET = tst_bench_qalgorithms
SOURCES = tst_qalgorithms.cpp
diff --git a/tests/benchmarks/corelib/tools/qcontiguouscache/qcontiguouscache.pro b/tests/benchmarks/corelib/tools/qcontiguouscache/qcontiguouscache.pro
index fe74dafef4..59adad6bbc 100644
--- a/tests/benchmarks/corelib/tools/qcontiguouscache/qcontiguouscache.pro
+++ b/tests/benchmarks/corelib/tools/qcontiguouscache/qcontiguouscache.pro
@@ -1,7 +1,6 @@
-TARGET = tst_bench_qcontiguouscache
-
-SOURCES += main.cpp
-
+CONFIG += benchmark
CONFIG += parallel_test
-
QT = core testlib
+
+TARGET = tst_bench_qcontiguouscache
+SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qcryptographichash/qcryptographichash.pro b/tests/benchmarks/corelib/tools/qcryptographichash/qcryptographichash.pro
index cf9d640f7e..025c70c2d9 100644
--- a/tests/benchmarks/corelib/tools/qcryptographichash/qcryptographichash.pro
+++ b/tests/benchmarks/corelib/tools/qcryptographichash/qcryptographichash.pro
@@ -1,5 +1,6 @@
-TARGET = tst_bench_qcryptographichash
-CONFIG -= debug
-CONFIG += release cmdline
+CONFIG += benchmark
+CONFIG += cmdline
QT = core testlib
+
+TARGET = tst_bench_qcryptographichash
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qhash/qhash.pro b/tests/benchmarks/corelib/tools/qhash/qhash.pro
index 40f661c116..f9a873d096 100644
--- a/tests/benchmarks/corelib/tools/qhash/qhash.pro
+++ b/tests/benchmarks/corelib/tools/qhash/qhash.pro
@@ -1,5 +1,6 @@
-TARGET = tst_hash
+CONFIG += benchmark
QT = core testlib
+
INCLUDEPATH += .
+TARGET = tst_hash
SOURCES += main.cpp outofline.cpp
-CONFIG += release
diff --git a/tests/benchmarks/corelib/tools/qlist/qlist.pro b/tests/benchmarks/corelib/tools/qlist/qlist.pro
index c83bc455d2..98767c3250 100644
--- a/tests/benchmarks/corelib/tools/qlist/qlist.pro
+++ b/tests/benchmarks/corelib/tools/qlist/qlist.pro
@@ -1,4 +1,5 @@
-TARGET = tst_bench_qlist
+CONFIG += benchmark
QT = core testlib
+TARGET = tst_bench_qlist
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qmap/qmap.pro b/tests/benchmarks/corelib/tools/qmap/qmap.pro
index 6c9bf5e8d6..0e06493c79 100644
--- a/tests/benchmarks/corelib/tools/qmap/qmap.pro
+++ b/tests/benchmarks/corelib/tools/qmap/qmap.pro
@@ -1,5 +1,6 @@
-TARGET = tst_bench_qmap
+CONFIG += benchmark
QT = core testlib
+
INCLUDEPATH += .
+TARGET = tst_bench_qmap
SOURCES += main.cpp
-CONFIG += release
diff --git a/tests/benchmarks/corelib/tools/qrect/qrect.pro b/tests/benchmarks/corelib/tools/qrect/qrect.pro
index 42cfcd8924..211cdc5bcc 100644
--- a/tests/benchmarks/corelib/tools/qrect/qrect.pro
+++ b/tests/benchmarks/corelib/tools/qrect/qrect.pro
@@ -1,7 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qrect
-
QT = core testlib
-CONFIG += release
+CONFIG += benchmark
+TARGET = tst_bench_qrect
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qringbuffer/qringbuffer.pro b/tests/benchmarks/corelib/tools/qringbuffer/qringbuffer.pro
index 21b50e10e5..69750865b5 100644
--- a/tests/benchmarks/corelib/tools/qringbuffer/qringbuffer.pro
+++ b/tests/benchmarks/corelib/tools/qringbuffer/qringbuffer.pro
@@ -1,7 +1,6 @@
TEMPLATE = app
-TARGET = tst_bench_qringbuffer
-
+CONFIG += benchmark
QT = core-private testlib
-CONFIG += release
+TARGET = tst_bench_qringbuffer
SOURCES += main.cpp
diff --git a/tests/benchmarks/corelib/tools/qset/qset.pro b/tests/benchmarks/corelib/tools/qset/qset.pro
index 8fb8bcfa0b..e448683e94 100644
--- a/tests/benchmarks/corelib/tools/qset/qset.pro
+++ b/tests/benchmarks/corelib/tools/qset/qset.pro
@@ -1,4 +1,5 @@
-TARGET = tst_qset
+CONFIG += benchmark
QT = core testlib
+
+TARGET = tst_qset
SOURCES += main.cpp
-CONFIG += release
diff --git a/tests/benchmarks/corelib/tools/qstack/qstack.pro b/tests/benchmarks/corelib/tools/qstack/qstack.pro
index 7d8a839610..17b7ebd486 100644
--- a/tests/benchmarks/corelib/tools/qstack/qstack.pro
+++ b/tests/benchmarks/corelib/tools/qstack/qstack.pro
@@ -1,4 +1,5 @@
-TARGET = tst_bench_stack
+CONFIG += benchmark
QT = core testlib core-private
+
+TARGET = tst_bench_stack
SOURCES += main.cpp
-CONFIG += release
diff --git a/tests/benchmarks/corelib/tools/qvector/qvector.pro b/tests/benchmarks/corelib/tools/qvector/qvector.pro
index 24a65d8ee8..fce8a6cd78 100644
--- a/tests/benchmarks/corelib/tools/qvector/qvector.pro
+++ b/tests/benchmarks/corelib/tools/qvector/qvector.pro
@@ -1,5 +1,6 @@
-TARGET = tst_bench_vector
+CONFIG += benchmark
QT = core testlib core-private
+
INCLUDEPATH += .
-SOURCES += main.cpp outofline.cpp
-CONFIG += release
+TARGET = tst_bench_vector
+SOURCES += main.cpp outofline.cpp