summaryrefslogtreecommitdiffstats
path: root/tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
diff options
context:
space:
mode:
authorMorten Sorvig <msorvig@trolltech.com>2009-08-10 10:14:12 +0200
committerMorten Sorvig <msorvig@trolltech.com>2009-08-10 10:20:15 +0200
commit7aa2d76dfc4a107f38c5cb0aac00a0b31d0fbbb6 (patch)
treeeeeef851de0e762822380f9c77645c489bab4567 /tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
parent2be387f3e94f84cf0167cdc3871de0d0af85c62d (diff)
Add QBENCMARK_ONCE to QTestLib.
The code block associated with QBENCHMARK_ONCE macro will only be executed once, whether the backend returns a valid result or not. The "-iterations" command line argument is also ignored. This is useful for benchmarking code that has side effects. Revby: jasplin
Diffstat (limited to 'tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp')
-rw-r--r--tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp b/tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
index de655995e4..8474144f33 100644
--- a/tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
+++ b/tests/auto/selftests/benchlibwalltime/tst_benchlibwalltime.cpp
@@ -50,6 +50,7 @@ class tst_BenchlibWalltime: public QObject
private slots:
void waitForOneThousand();
void waitForFourThousand();
+ void qbenchmark_once();
};
void tst_BenchlibWalltime::waitForOneThousand()
@@ -66,6 +67,16 @@ void tst_BenchlibWalltime::waitForFourThousand()
}
}
+void tst_BenchlibWalltime::qbenchmark_once()
+{
+ int iterations = 0;
+ QBENCHMARK_ONCE {
+ ++iterations;
+ }
+ QCOMPARE(iterations, 1);
+}
+
+
QTEST_MAIN(tst_BenchlibWalltime)
#include "tst_benchlibwalltime.moc"