aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp
diff options
context:
space:
mode:
authorJan Arve Saether <jan-arve.saether@digia.com>2014-02-20 19:46:41 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-22 03:00:37 +0100
commit109889428edc5e4cf25c9fdd11a5e006e8a08630 (patch)
treef101724cd301684baad730a3a76330be2195ee2c /tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp
parentdb32813a865fe8eda6a4ff87c71b791a26b343c3 (diff)
Update QQuickTextInput's baselineOffset when only height changes
Task-number: QTBUG-36529 Change-Id: I2cd577013c4965e76c9350abaebb9b7a6e4e0270 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Diffstat (limited to 'tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp')
-rw-r--r--tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp25
1 files changed, 19 insertions, 6 deletions
diff --git a/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp b/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp
index 73abddb2c7..273c0de660 100644
--- a/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp
+++ b/tests/auto/quick/qquicktextinput/tst_qquicktextinput.cpp
@@ -6391,36 +6391,42 @@ void tst_qquicktextinput::baselineOffset_data()
{
QTest::addColumn<QString>("text");
QTest::addColumn<QByteArray>("bindings");
+ QTest::addColumn<qreal>("setHeight");
QTest::addColumn<ExpectedBaseline>("expectedBaseline");
QTest::addColumn<ExpectedBaseline>("expectedBaselineEmpty");
QTest::newRow("normal")
<< "Typography"
<< QByteArray()
+ << -1.
<< &expectedBaselineTop
<< &expectedBaselineTop;
QTest::newRow("top align")
<< "Typography"
<< QByteArray("height: 200; verticalAlignment: Text.AlignTop")
+ << -1.
<< &expectedBaselineTop
<< &expectedBaselineTop;
QTest::newRow("bottom align")
<< "Typography"
<< QByteArray("height: 200; verticalAlignment: Text.AlignBottom")
+ << 100.
<< &expectedBaselineBottom
<< &expectedBaselineBottom;
QTest::newRow("center align")
<< "Typography"
<< QByteArray("height: 200; verticalAlignment: Text.AlignVCenter")
+ << 100.
<< &expectedBaselineCenter
<< &expectedBaselineCenter;
QTest::newRow("multiline bottom aligned")
<< "The quick brown fox jumps over the lazy dog"
<< QByteArray("height: 200; width: 30; verticalAlignment: Text.AlignBottom; wrapMode: TextInput.WordWrap")
+ << -1.
<< &expectedBaselineMultilineBottom
<< &expectedBaselineBottom;
}
@@ -6429,6 +6435,7 @@ void tst_qquicktextinput::baselineOffset()
{
QFETCH(QString, text);
QFETCH(QByteArray, bindings);
+ QFETCH(qreal, setHeight);
QFETCH(ExpectedBaseline, expectedBaseline);
QFETCH(ExpectedBaseline, expectedBaselineEmpty);
@@ -6441,12 +6448,18 @@ void tst_qquicktextinput::baselineOffset()
QScopedPointer<QObject> object(component.create());
QQuickTextInput *item = qobject_cast<QQuickTextInput *>(object.data());
- QVERIFY(item);
- QCOMPARE(item->baselineOffset(), expectedBaselineEmpty(item));
- item->setText(text);
- QCOMPARE(item->baselineOffset(), expectedBaseline(item));
- item->setText(QString());
- QCOMPARE(item->baselineOffset(), expectedBaselineEmpty(item));
+
+ int passes = setHeight >= 0 ? 2 : 1;
+ while (passes--) {
+ QVERIFY(item);
+ QCOMPARE(item->baselineOffset(), expectedBaselineEmpty(item));
+ item->setText(text);
+ QCOMPARE(item->baselineOffset(), expectedBaseline(item));
+ item->setText(QString());
+ QCOMPARE(item->baselineOffset(), expectedBaselineEmpty(item));
+ if (setHeight >= 0)
+ item->setHeight(setHeight);
+ }
}
QTEST_MAIN(tst_qquicktextinput)