forked from qt-creator/qt-creator
Introduce a new QStringBuilder helper class to speed up building strings
from smaller chunks using expression templates. Simple test and benchmark included, the class is not yet complete.
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
load(qttest_p4)
|
||||
SOURCES += tst_qstringbuilder.cpp
|
||||
|
||||
QT -= gui
|
||||
|
||||
QT = core
|
||||
|
||||
DEFINES += QT_NO_CAST_TO_ASCII
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
|
||||
** Contact: Qt Software Information (qt-info@nokia.com)
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
#include <QtTest/QtTest>
|
||||
#include "../../../src/libs/utils/qstringbuilder.h"
|
||||
|
||||
//TESTED_CLASS=QStringBuilder
|
||||
//TESTED_FILES=qstringbuilder.h
|
||||
|
||||
class tst_QStringBuilder : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
tst_QStringBuilder();
|
||||
~tst_QStringBuilder() {}
|
||||
|
||||
public slots:
|
||||
void init() {}
|
||||
void cleanup() {}
|
||||
|
||||
private slots:
|
||||
void operator_percent();
|
||||
};
|
||||
|
||||
|
||||
tst_QStringBuilder::tst_QStringBuilder()
|
||||
{
|
||||
//QTextCodec::setCodecForLocale(QTextCodec::codecForName("ISO 8859-1"));
|
||||
}
|
||||
|
||||
void tst_QStringBuilder::operator_percent()
|
||||
{
|
||||
QLatin1Literal l1literal("a literal");
|
||||
QLatin1String l1string("a literal");
|
||||
QLatin1Char l1char('c');
|
||||
QChar qchar(l1char);
|
||||
|
||||
QCOMPARE(QString(l1literal % l1literal), QString(l1string + l1string));
|
||||
}
|
||||
|
||||
QTEST_APPLESS_MAIN(tst_QStringBuilder)
|
||||
|
||||
#include "tst_qstringbuilder.moc"
|
||||
Reference in New Issue
Block a user