blob: c72b52582728b7249edb2095c446a7520c0e4db9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QDebug>
#include <QIODevice>
#include <QFile>
#include <QString>
#include <QTemporaryFile>
#include <qtest.h>
class tst_QTemporaryFile : public QObject
{
Q_OBJECT
private slots:
void openclose_data();
void openclose();
void readwrite_data() { openclose_data(); }
void readwrite();
private:
};
void tst_QTemporaryFile::openclose_data()
{
QTest::addColumn<qint64>("amount");
QTest::newRow("100") << qint64(100);
QTest::newRow("1000") << qint64(1000);
QTest::newRow("10000") << qint64(10000);
}
void tst_QTemporaryFile::openclose()
{
QFETCH(qint64, amount);
QBENCHMARK {
for (qint64 i = 0; i < amount; ++i) {
QTemporaryFile file;
file.open();
file.close();
}
}
}
void tst_QTemporaryFile::readwrite()
{
QFETCH(qint64, amount);
const int dataSize = 4096;
QByteArray data;
data.fill('a', dataSize);
QBENCHMARK {
for (qint64 i = 0; i < amount; ++i) {
QTemporaryFile file;
file.open();
file.write(data);
file.seek(0);
file.read(dataSize);
file.close();
}
}
}
QTEST_MAIN(tst_QTemporaryFile)
#include "tst_bench_qtemporaryfile.moc"
|