From: Damian Jansen Date: Thu, 20 Oct 2011 05:48:29 +0000 (+1000) Subject: Test for ASSERT on empty tags in TextEdit X-Git-Url: http://git.silmor.de/gitweb/?a=commitdiff_plain;h=2dba656cb5b9d54db4f348bf6d0b3db7d950b392;p=konrad%2Fqtdeclarative.git Test for ASSERT on empty tags in TextEdit Test for assert if user enters empty text, generally when binding a Text element to a TextEdit. Change-Id: I9d5ec511971eb823d1f2388de13eb5cdb82a4477 Reviewed-by: Yann Bodson --- diff --git a/tests/auto/declarative/qsgtextedit/data/qtbug-22058.qml b/tests/auto/declarative/qsgtextedit/data/qtbug-22058.qml new file mode 100644 index 0000000..8ad1514 --- /dev/null +++ b/tests/auto/declarative/qsgtextedit/data/qtbug-22058.qml @@ -0,0 +1,39 @@ +import QtQuick 2.0 + +Rectangle { + property variant inputField: textedit + height: 200 + width: 200 + + Rectangle { + height: parent.height /2 + width: parent.width + color: "transparent" + border.color: "black" + border.width: 4 + Text { + anchors.centerIn: parent + height: parent.height * .95 + width: parent.width * .95 + text: textedit.text + } + } + + Rectangle { + height: parent.height /2 + width: parent.width + color: "transparent" + border.color: "black" + border.width: 4 + anchors.bottom: parent.bottom + TextEdit { + id: textedit + anchors.centerIn: parent + height: parent.height * .95 + width: parent.width * .95 + focus: true + wrapMode: TextEdit.WordWrap + text: "" + } + } +} diff --git a/tests/auto/declarative/qsgtextedit/tst_qsgtextedit.cpp b/tests/auto/declarative/qsgtextedit/tst_qsgtextedit.cpp index 17ce4db..7afa5e6 100644 --- a/tests/auto/declarative/qsgtextedit/tst_qsgtextedit.cpp +++ b/tests/auto/declarative/qsgtextedit/tst_qsgtextedit.cpp @@ -156,6 +156,8 @@ private slots: void inputMethodComposing(); void cursorRectangleSize(); + void emptytags_QTBUG_22058(); + private: void simulateKey(QSGView *, int key, Qt::KeyboardModifiers modifiers = 0); @@ -2438,6 +2440,28 @@ void tst_qsgtextedit::cursorRectangleSize() delete canvas; } +void tst_qsgtextedit::emptytags_QTBUG_22058() +{ + QSGView canvas(QUrl::fromLocalFile(TESTDATA("qtbug-22058.qml"))); + QVERIFY(canvas.rootObject() != 0); + + canvas.show(); + canvas.requestActivateWindow(); + QTest::qWaitForWindowShown(&canvas); + QSGTextEdit *input = qobject_cast(qvariant_cast(canvas.rootObject()->property("inputField"))); + QVERIFY(input->hasActiveFocus()); + + QInputMethodEvent event("", QList()); + event.setCommitString("Bold<"); + QGuiApplication::sendEvent(input, &event); + QCOMPARE(input->text(), QString("Bold<")); + event.setCommitString(">"); + QEXPECT_FAIL("", "Entering empty tags into a TextEdit asserts - QTBUG-22058", Abort); + QVERIFY(false); + QGuiApplication::sendEvent(input, &event); + QCOMPARE(input->text(), QString("Bold<>")); +} + QTEST_MAIN(tst_qsgtextedit) #include "tst_qsgtextedit.moc"