kde-workspace/libs/ksysguard/tests/graphicssignalplotterbenchmark.cpp

60 lines
1.4 KiB
C++
Raw Normal View History

2014-11-13 19:30:51 +02:00
#include "graphicssignalplotterbenchmark.h"
#include "../../../libs/ksysguard/signalplotter/kgraphicssignalplotter.h"
#include <qtest_kde.h>
#include <KRandom>
2014-11-13 19:30:51 +02:00
#include <QtTest>
#include <QGraphicsView>
#include <QGraphicsScene>
2014-11-13 19:30:51 +02:00
#include <limits>
void BenchmarkGraphicsSignalPlotter::init()
{
scene = new QGraphicsScene;
view = new QGraphicsView(scene);
s = new KGraphicsSignalPlotter;
scene->addItem(s);
}
void BenchmarkGraphicsSignalPlotter::cleanup()
{
delete view;
delete scene;
}
void BenchmarkGraphicsSignalPlotter::addData()
{
s->addBeam(Qt::blue);
s->addBeam(Qt::green);
s->addBeam(Qt::red);
s->addBeam(Qt::yellow);
s->resize(1000,500);
view->resize(1010,510);
view->show();
s->setMaxAxisTextWidth(5);
QTest::qWaitForWindowShown(view);
QBENCHMARK {
s->addSample(QList<qreal>() << KRandom::randomMax(10) << KRandom::randomMax(10) << KRandom::randomMax(10) << KRandom::randomMax(10));
2014-11-13 19:30:51 +02:00
qApp->processEvents();
}
}
void BenchmarkGraphicsSignalPlotter::addDataWhenHidden()
{
s->addBeam(Qt::blue);
s->addBeam(Qt::green);
s->addBeam(Qt::red);
s->addBeam(Qt::yellow);
QBENCHMARK {
s->addSample(QList<qreal>() << KRandom::randomMax(10) << KRandom::randomMax(10) << KRandom::randomMax(10) << KRandom::randomMax(10));
2014-11-13 19:30:51 +02:00
qApp->processEvents();
}
}
QTEST_KDEMAIN(BenchmarkGraphicsSignalPlotter, GUI)