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
|
#include <QTest>
#include "testconfig.h"
#include "stringutil.h"
class T_KraftString : public QObject {
Q_OBJECT
private Q_SLOTS:
void simple1() {
QString tmpl{"Foo %nn baz"};
QMap<QString, QString> rep;
rep.insert("%nn", "bar");
QString re = KraftString::replaceTags(tmpl, rep);
QCOMPARE(re, QStringLiteral("Foo bar baz"));
}
void keyLenVariant() {
QString tmpl{"Foo %nn %nnn baz"};
QMap<QString, QString> rep;
rep.insert("%nn", "bar");
rep.insert("%nnn", "bar2");
QString re = KraftString::replaceTags(tmpl, rep);
QCOMPARE(re, QStringLiteral("Foo bar bar2 baz"));
}
void multipleKey() {
QString tmpl{"Foo %nn %nnn %nn baz"};
QMap<QString, QString> rep;
rep.insert("%nn", "bar");
rep.insert("%nnn", "bar2");
QString re = KraftString::replaceTags(tmpl, rep);
QCOMPARE(re, QStringLiteral("Foo bar bar2 bar baz"));
}
void multipleKey2() {
QString tmpl{"Foo %nn %nnn %nn %dd baz"};
QMap<QString, QString> rep;
rep.insert("%nn", "bar");
rep.insert("%nnn", "bar2");
rep.insert("%dd", "numbers");
QString re = KraftString::replaceTags(tmpl, rep);
QCOMPARE(re, QStringLiteral("Foo bar bar2 bar numbers baz"));
}
void percentVal() {
QString tmpl{"Foo %nn %nnn"};
QMap<QString, QString> rep;
rep.insert("%nn", "bar %");
rep.insert("%nnn", "bar2");
QString re = KraftString::replaceTags(tmpl, rep);
QCOMPARE(re, QStringLiteral("Foo bar % bar2"));
}
};
QTEST_MAIN(T_KraftString)
#include "t_stringutil.moc"
|