diff options
-rw-r--r-- | tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp index 6df217d801..a18999d174 100644 --- a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp +++ b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp @@ -4111,13 +4111,18 @@ void tst_QLineEdit::QTBUG13520_textNotVisible() le.setAlignment( Qt::AlignRight | Qt::AlignVCenter); le.show(); QVERIFY(QTest::qWaitForWindowExposed(&le)); - le.setText("01-ST16-01SIL-MPL001wfgsdfgsdgsdfgsdfgsdfgsdfgsdfg"); + QString sometext("01-ST16-01SIL-MPL001wfgsdfgsdgsdfgsdfgsdfgsdfgsdfg"); + le.setText(sometext); le.setCursorPosition(0); QTest::qWait(100); //just make sure we get he lineedit correcly painted - QVERIFY(le.cursorRect().center().x() < le.width() / 2); - + auto expectedCursorCoordinate = le.width() - le.fontMetrics().horizontalAdvance(sometext); + // cursor does not leave widget to the left: + if (expectedCursorCoordinate < 0) + expectedCursorCoordinate = 0; + // compare with some tolerance for margins + QVERIFY(qAbs(le.cursorRect().center().x() - expectedCursorCoordinate) < 10); } class UpdateRegionLineEdit : public QLineEdit |