|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# testgui.cpp Example File
qtestlib/tutorial4/testgui.cpp

    /****************************************************************************
    **
    ** Copyright (C) 2005-2006 Trolltech ASA. All rights reserved.
    **
    ** This file is part of the example classes of the Qt Toolkit.
    **
    ** Licensees holding valid Qt Preview licenses may use this file in
    ** accordance with the Qt Preview License Agreement provided with the
    ** Software.
    **
    ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
    ** information about Qt Commercial License Agreements.
    **
    ** Contact info@trolltech.com if any conditions of this licensing are
    ** not clear to you.
    **
    ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
    ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    **
    ****************************************************************************/

    #include <QtGui>
    #include <QtTest/QtTest>

    class TestGui: public QObject
    {
        Q_OBJECT

    private slots:
        void testGui_data();
        void testGui();
    };

    void TestGui::testGui_data()
    {
        QTest::addColumn<QTestEventList>("events");
        QTest::addColumn<QString>("expected");

        QTestEventList list1;
        list1.addKeyClick('a');
        QTest::newRow("char") << list1 << "a";

        QTestEventList list2;
        list2.addKeyClick('a');
        list2.addKeyClick(Qt::Key_Backspace);
        QTest::newRow("there and back again") << list2 << "";
    }

    void TestGui::testGui()
    {
        QFETCH(QTestEventList, events);
        QFETCH(QString, expected);

        QLineEdit lineEdit;

        events.simulate(&lineEdit);

        QCOMPARE(lineEdit.text(), expected);
    }

    QTEST_MAIN(TestGui)
    #include "testgui.moc"