Nut/test/tst_benckmark/maintest.cpp

60 lines
1.0 KiB
C++
Raw Normal View History

2016-05-24 14:47:37 +08:00
#include <QtTest>
#include <QJsonDocument>
#include <QSqlError>
2016-05-24 14:53:40 +08:00
#include "consts.h"
2016-05-24 14:47:37 +08:00
#include "maintest.h"
#include "query.h"
#include "tableset.h"
#include "tablemodel.h"
#include "databasemodel.h"
2019-02-08 17:11:53 +08:00
#include "user.h"
2016-05-24 14:47:37 +08:00
#include "post.h"
#include "comment.h"
2019-02-08 17:11:53 +08:00
#include "score.h"
2016-05-24 14:47:37 +08:00
MainTest::MainTest(QObject *parent) : QObject(parent)
{
}
void MainTest::initTestCase()
{
2019-02-08 17:11:53 +08:00
REGISTER(User);
REGISTER(Post);
REGISTER(Score);
REGISTER(Comment);
REGISTER(WeblogDatabase);
2016-05-24 14:47:37 +08:00
2016-05-24 14:53:40 +08:00
db.setDriver(DRIVER);
db.setHostName(HOST);
db.setDatabaseName(DATABASE);
db.setUserName(USERNAME);
db.setPassword(PASSWORD);
2016-05-24 14:47:37 +08:00
bool ok = db.open();
QTEST_ASSERT(ok);
}
void MainTest::insert1kPost()
{
QTime t;
t.start();
for (int i = 0; i < 1000; ++i) {
Post *newPost = new Post;
newPost->setTitle("post title");
newPost->setSaveDate(QDateTime::currentDateTime());
db.posts()->append(newPost);
}
db.saveChanges();
qDebug("1k post inserted in %d ms", t.elapsed());
}
QTEST_MAIN(MainTest)