summaryrefslogtreecommitdiffstats
path: root/tests/auto/other
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/other')
-rw-r--r--tests/auto/other/lancelot/paintcommands.cpp3
-rw-r--r--tests/auto/other/lancelot/scripts/paths.qps2
-rw-r--r--tests/auto/other/lancelot/tst_lancelot.cpp2
-rw-r--r--tests/auto/other/qaccessibility/tst_qaccessibility.cpp143
4 files changed, 115 insertions, 35 deletions
diff --git a/tests/auto/other/lancelot/paintcommands.cpp b/tests/auto/other/lancelot/paintcommands.cpp
index d810e6e41a..969db62acb 100644
--- a/tests/auto/other/lancelot/paintcommands.cpp
+++ b/tests/auto/other/lancelot/paintcommands.cpp
@@ -848,8 +848,7 @@ void PaintCommands::command_import(QRegExp re)
QFileInfo fileinfo(*file);
m_commands[m_currentCommandIndex] = QString("# import file (%1) start").arg(fileinfo.fileName());
- QTextStream textFile(file);
- QString rawContent = textFile.readAll();
+ QString rawContent = QString::fromUtf8(file->readAll());
QStringList importedData = rawContent.split('\n', QString::SkipEmptyParts);
importedData.append(QString("# import file (%1) end ---").arg(fileinfo.fileName()));
insertAt(m_currentCommandIndex, importedData);
diff --git a/tests/auto/other/lancelot/scripts/paths.qps b/tests/auto/other/lancelot/scripts/paths.qps
index 083026ee17..555390de45 100644
--- a/tests/auto/other/lancelot/scripts/paths.qps
+++ b/tests/auto/other/lancelot/scripts/paths.qps
@@ -10,7 +10,7 @@ path_lineTo star 0 20
path_lineTo star 80 100
setFont "times" 50
-path_addText text 0 50 "ABCD, 1234, abcd, #¤%&"
+path_addText text 0 50 "ABCD, 1234, abcd, #¤%&"
path_addRect rectncircle 0 0 75 75
path_addEllipse rectncircle 25 25 75 75
diff --git a/tests/auto/other/lancelot/tst_lancelot.cpp b/tests/auto/other/lancelot/tst_lancelot.cpp
index 05623f9f5c..4bb0bae243 100644
--- a/tests/auto/other/lancelot/tst_lancelot.cpp
+++ b/tests/auto/other/lancelot/tst_lancelot.cpp
@@ -125,7 +125,7 @@ void tst_Lancelot::initTestCase()
QFile file(scriptsDir + fileName);
file.open(QFile::ReadOnly);
QByteArray cont = file.readAll();
- scripts.insert(fileName, QString::fromLatin1(cont).split(QLatin1Char('\n'), QString::SkipEmptyParts));
+ scripts.insert(fileName, QString::fromUtf8(cont).split(QLatin1Char('\n'), QString::SkipEmptyParts));
it->itemName = fileName;
it->itemChecksum = qChecksum(cont.constData(), cont.size());
it++;
diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp
index a72dac1b81..b71594edae 100644
--- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp
+++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp
@@ -369,21 +369,21 @@ void tst_QAccessibility::eventTest()
button->setObjectName(QString("Olaf"));
button->show();
- QAccessibleEvent showEvent(QAccessible::ObjectShow, button, -1);
+ QAccessibleEvent showEvent(button, QAccessible::ObjectShow);
QVERIFY_EVENT(&showEvent);
button->setFocus(Qt::MouseFocusReason);
QTestAccessibility::clearEvents();
QTest::mouseClick(button, Qt::LeftButton, 0);
button->setAccessibleName("Olaf the second");
- QAccessibleEvent nameEvent(QAccessible::NameChanged, button);
+ QAccessibleEvent nameEvent(button, QAccessible::NameChanged);
QVERIFY_EVENT(&nameEvent);
button->setAccessibleDescription("This is a button labeled Olaf");
- QAccessibleEvent descEvent(QAccessible::DescriptionChanged, button);
+ QAccessibleEvent descEvent(button, QAccessible::DescriptionChanged);
QVERIFY_EVENT(&descEvent);
button->hide();
- QAccessibleEvent hideEvent(QAccessible::ObjectHide, button);
+ QAccessibleEvent hideEvent(button, QAccessible::ObjectHide);
QVERIFY_EVENT(&hideEvent);
delete button;
@@ -688,9 +688,10 @@ void tst_QAccessibility::hideShowTest()
window->show();
QVERIFY(!state(window).invisible);
QVERIFY(!state(child).invisible);
- QAccessibleEvent show(QAccessible::ObjectShow, window);
+
+ QAccessibleEvent show(window, QAccessible::ObjectShow);
QVERIFY(QTestAccessibility::containsEvent(&show));
- QAccessibleEvent showChild(QAccessible::ObjectShow, child);
+ QAccessibleEvent showChild(child, QAccessible::ObjectShow);
QVERIFY(QTestAccessibility::containsEvent(&showChild));
QTestAccessibility::clearEvents();
@@ -698,9 +699,9 @@ void tst_QAccessibility::hideShowTest()
window->hide();
QVERIFY(state(window).invisible);
QVERIFY(state(child).invisible);
- QAccessibleEvent hide(QAccessible::ObjectHide, window);
+ QAccessibleEvent hide(window, QAccessible::ObjectHide);
QVERIFY(QTestAccessibility::containsEvent(&hide));
- QAccessibleEvent hideChild(QAccessible::ObjectHide, child);
+ QAccessibleEvent hideChild(child, QAccessible::ObjectHide);
QVERIFY(QTestAccessibility::containsEvent(&hideChild));
QTestAccessibility::clearEvents();
@@ -782,7 +783,7 @@ void tst_QAccessibility::mainWindowTest()
QLatin1String name = QLatin1String("I am the main window");
mw->setWindowTitle(name);
QTest::qWaitForWindowShown(mw);
- QAccessibleEvent show(QAccessible::ObjectShow, mw);
+ QAccessibleEvent show(mw, QAccessible::ObjectShow);
QVERIFY_EVENT(&show);
QAccessibleInterface *interface = QAccessible::queryAccessibleInterface(mw);
@@ -943,7 +944,7 @@ void tst_QAccessibility::buttonTest()
QVERIFY(checkBox.isChecked());
QAccessible::State st;
st.checked = true;
- QAccessibleStateChangeEvent ev(st, &checkBox);
+ QAccessibleStateChangeEvent ev(&checkBox, st);
QVERIFY_EVENT(&ev);
checkBox.setChecked(false);
QVERIFY_EVENT(&ev);
@@ -964,7 +965,7 @@ void tst_QAccessibility::buttonTest()
QVERIFY(radio.isChecked());
QAccessible::State st;
st.checked = true;
- QAccessibleStateChangeEvent ev(st, &radio);
+ QAccessibleStateChangeEvent ev(&radio, st);
QVERIFY_EVENT(&ev);
delete interface;
}
@@ -1028,13 +1029,13 @@ void tst_QAccessibility::scrollBarTest()
scrollBar->resize(200, 50);
scrollBar->show();
QVERIFY(!scrollBarInterface->state().invisible);
- QAccessibleEvent show(QAccessible::ObjectShow, scrollBar);
+ QAccessibleEvent show(scrollBar, QAccessible::ObjectShow);
QVERIFY(QTestAccessibility::containsEvent(&show));
QTestAccessibility::clearEvents();
scrollBar->hide();
QVERIFY(scrollBarInterface->state().invisible);
- QAccessibleEvent hide(QAccessible::ObjectHide, scrollBar);
+ QAccessibleEvent hide(scrollBar, QAccessible::ObjectHide);
QVERIFY(QTestAccessibility::containsEvent(&hide));
QTestAccessibility::clearEvents();
@@ -1475,7 +1476,7 @@ void tst_QAccessibility::spinBoxTest()
QTestAccessibility::clearEvents();
QTest::keyPress(spinBox, Qt::Key_Up);
QTest::qWait(200);
- QAccessibleEvent expectedEvent(QAccessible::ValueChanged, spinBox);
+ QAccessibleValueChangeEvent expectedEvent(spinBox, spinBox->value());
QVERIFY(QTestAccessibility::containsEvent(&expectedEvent));
delete spinBox;
QTestAccessibility::clearEvents();
@@ -1695,8 +1696,10 @@ void tst_QAccessibility::mdiSubWindowTest()
void tst_QAccessibility::lineEditTest()
{
+ QWidget *toplevel = new QWidget;
+ {
QLineEdit *le = new QLineEdit;
- QAccessibleInterface *iface = QAccessible::queryAccessibleInterface(le);
+ QAIPtr iface(QAccessible::queryAccessibleInterface(le));
QVERIFY(iface);
le->show();
@@ -1727,7 +1730,6 @@ void tst_QAccessibility::lineEditTest()
QVERIFY(!(iface->state().passwordEdit));
QCOMPARE(iface->text(QAccessible::Value), secret);
- QWidget *toplevel = new QWidget;
le->setParent(toplevel);
toplevel->show();
QApplication::processEvents();
@@ -1746,7 +1748,7 @@ void tst_QAccessibility::lineEditTest()
le->setFocus(Qt::TabFocusReason);
QTestAccessibility::clearEvents();
le2->setFocus(Qt::TabFocusReason);
- QAccessibleEvent ev(QAccessible::Focus, le2);
+ QAccessibleEvent ev(le2, QAccessible::Focus);
QTRY_VERIFY(QTestAccessibility::containsEvent(&ev));
le->setText(QLatin1String("500"));
@@ -1754,20 +1756,23 @@ void tst_QAccessibility::lineEditTest()
iface->setText(QAccessible::Value, QLatin1String("This text is not a number"));
QCOMPARE(le->text(), QLatin1String("500"));
- delete iface;
delete le;
delete le2;
- QTestAccessibility::clearEvents();
+ }
- // IA2
+ {
+ // Text interface to get the current text
QString cite = "I always pass on good advice. It is the only thing to do with it. It is never of any use to oneself. --Oscar Wilde";
QLineEdit *le3 = new QLineEdit(cite, toplevel);
- iface = QAccessible::queryAccessibleInterface(le3);
+ le3->show();
+ QAIPtr iface(QAccessible::queryAccessibleInterface(le3));
QAccessibleTextInterface* textIface = iface->textInterface();
le3->deselect();
+ QTestAccessibility::clearEvents();
le3->setCursorPosition(3);
QCOMPARE(textIface->cursorPosition(), 3);
- QAccessibleEvent caretEvent(QAccessible::TextCaretMoved, le3);
+
+ QAccessibleTextCursorEvent caretEvent(le3, 3);
QTRY_VERIFY(QTestAccessibility::containsEvent(&caretEvent));
QCOMPARE(textIface->selectionCount(), 0);
QTestAccessibility::clearEvents();
@@ -1813,7 +1818,78 @@ void tst_QAccessibility::lineEditTest()
QCOMPARE(textIface->textAtOffset(5, QAccessible2::LineBoundary,&start,&end), cite);
QCOMPARE(textIface->textAtOffset(5, QAccessible2::NoBoundary,&start,&end), cite);
- delete iface;
+ QTestAccessibility::clearEvents();
+ }
+
+ {
+ // Test events: cursor movement, selection, text changes
+ QString text = "Hello, world";
+ QLineEdit *lineEdit = new QLineEdit(text, toplevel);
+ lineEdit->show();
+ QTestAccessibility::clearEvents();
+ // cursor
+ lineEdit->setCursorPosition(5);
+ QAccessibleTextCursorEvent cursorEvent(lineEdit, 5);
+ QVERIFY_EVENT(&cursorEvent);
+ lineEdit->setCursorPosition(0);
+ cursorEvent.setCursorPosition(0);
+ QVERIFY_EVENT(&cursorEvent);
+
+ // selection
+ lineEdit->setSelection(2, 4);
+
+ QAccessibleTextSelectionEvent sel(lineEdit, 2, 2+4);
+ QVERIFY_EVENT(&sel);
+
+ lineEdit->selectAll();
+ sel.setSelection(0, lineEdit->text().length());
+ sel.setCursorPosition(lineEdit->text().length());
+ QVERIFY_EVENT(&sel);
+
+ lineEdit->setSelection(10, -4);
+ QCOMPARE(lineEdit->cursorPosition(), 6);
+ QAccessibleTextSelectionEvent sel2(lineEdit, 6, 10);
+ sel2.setCursorPosition(6);
+ QVERIFY_EVENT(&sel2);
+
+ lineEdit->deselect();
+ QAccessibleTextSelectionEvent sel3(lineEdit, -1, -1);
+ sel3.setCursorPosition(6);
+ QVERIFY_EVENT(&sel3);
+
+ // editing
+ lineEdit->clear();
+ // FIXME: improve redundant updates
+ QAccessibleTextRemoveEvent remove(lineEdit, 0, text);
+ QVERIFY_EVENT(&remove);
+
+ QAccessibleTextSelectionEvent noSel(lineEdit, -1, -1);
+ QVERIFY_EVENT(&noSel);
+ QAccessibleTextCursorEvent cursor(lineEdit, 0);
+ QVERIFY_EVENT(&cursor);
+
+ lineEdit->setText("foo");
+ qDebug() << QTestAccessibility::events();
+ cursorEvent.setCursorPosition(3);
+ QVERIFY_EVENT(&cursorEvent);
+
+ QAccessibleTextInsertEvent e(lineEdit, 0, "foo");
+ QVERIFY(QTestAccessibility::containsEvent(&e));
+
+ lineEdit->setText("bar");
+ QAccessibleTextUpdateEvent update(lineEdit, 0, "foo", "bar");
+ QVERIFY(QTestAccessibility::containsEvent(&update));
+
+// QTestEventList keys;
+// keys.addKeyClick('D');
+// keys.addKeyClick('E');
+// keys.addKeyClick(Qt::Key_Left);
+// keys.addKeyClick(Qt::Key_Left);
+// keys.addKeyClick('C');
+// keys.addKeyClick('O');
+// keys.simulate(lineEdit);
+// FIXME: Test key press events...
+ }
delete toplevel;
QTestAccessibility::clearEvents();
}
@@ -2139,15 +2215,20 @@ void tst_QAccessibility::listTest()
// Check for events
QTest::mouseClick(listView->viewport(), Qt::LeftButton, 0, listView->visualItemRect(listView->item(1)).center());
- QAccessibleEvent selectList2(QAccessible::Selection, listView, 2);
- QVERIFY(QTestAccessibility::containsEvent(&selectList2));
- QAccessibleEvent focusList2(QAccessible::Focus, listView, 2);
- QVERIFY(QTestAccessibility::containsEvent(&focusList2));
+ QAccessibleEvent selectionEvent(listView, QAccessible::Selection);
+ selectionEvent.setChild(2);
+ QAccessibleEvent focusEvent(listView, QAccessible::Focus);
+ focusEvent.setChild(2);
+ QVERIFY(QTestAccessibility::containsEvent(&selectionEvent));
+ QVERIFY(QTestAccessibility::containsEvent(&focusEvent));
QTest::mouseClick(listView->viewport(), Qt::LeftButton, 0, listView->visualItemRect(listView->item(2)).center());
- QAccessibleEvent selectList3(QAccessible::Selection, listView, 3);
- QVERIFY(QTestAccessibility::containsEvent(&selectList3));
- QAccessibleEvent focusList3(QAccessible::Focus, listView, 3);
- QVERIFY(QTestAccessibility::containsEvent(&focusList3));
+
+ QAccessibleEvent selectionEvent2(listView, QAccessible::Selection);
+ selectionEvent2.setChild(3);
+ QAccessibleEvent focusEvent2(listView, QAccessible::Focus);
+ focusEvent2.setChild(3);
+ QVERIFY(QTestAccessibility::containsEvent(&selectionEvent2));
+ QVERIFY(QTestAccessibility::containsEvent(&focusEvent2));
listView->addItem("Munich");
QCOMPARE(iface->childCount(), 4);