From 087fcc61824a54e49e68b9090b2983ef7dd18ddb Mon Sep 17 00:00:00 2001 From: Jo Asplin Date: Thu, 3 Nov 2011 10:12:44 +0100 Subject: Moved tests into gui/kernel/ and gui/qopengl/ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit moves tests from test/auto/ into more appropriate locations (i.e. matching the locations in the Qt source): - qscreen and qwindow are moved into gui/kernel/ - qopengl is moved into gui/qopengl/ Note: qscreen is disabled for now since it is broken on Linux (see QTBUG-22554). Change-Id: Idcc7a51e78d6d0955bddb9cb4091866659193cc8 Reviewed-by: Samuel Rødal --- tests/auto/qwindow/qwindow.pro | 7 -- tests/auto/qwindow/tst_qwindow.cpp | 225 ------------------------------------- 2 files changed, 232 deletions(-) delete mode 100644 tests/auto/qwindow/qwindow.pro delete mode 100644 tests/auto/qwindow/tst_qwindow.cpp (limited to 'tests/auto/qwindow') diff --git a/tests/auto/qwindow/qwindow.pro b/tests/auto/qwindow/qwindow.pro deleted file mode 100644 index 9fb49e8ceb..0000000000 --- a/tests/auto/qwindow/qwindow.pro +++ /dev/null @@ -1,7 +0,0 @@ -CONFIG += testcase -TARGET = tst_qwindow - -QT += core-private gui-private testlib - -SOURCES += tst_qwindow.cpp - diff --git a/tests/auto/qwindow/tst_qwindow.cpp b/tests/auto/qwindow/tst_qwindow.cpp deleted file mode 100644 index 4171f0f797..0000000000 --- a/tests/auto/qwindow/tst_qwindow.cpp +++ /dev/null @@ -1,225 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the test suite of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 as published by the Free Software Foundation -** and appearing in the file LICENSE.GPL included in the packaging of this -** file. Please review the following information to ensure the GNU General -** Public License version 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include - -#include - -class tst_QWindow: public QObject -{ - Q_OBJECT - -private slots: - void mapGlobal(); - void positioning(); - void isActive(); -}; - - -void tst_QWindow::mapGlobal() -{ - QWindow a; - QWindow b(&a); - QWindow c(&b); - - a.setGeometry(10, 10, 300, 300); - b.setGeometry(20, 20, 200, 200); - c.setGeometry(40, 40, 100, 100); - - QCOMPARE(a.mapToGlobal(QPoint(100, 100)), QPoint(110, 110)); - QCOMPARE(b.mapToGlobal(QPoint(100, 100)), QPoint(130, 130)); - QCOMPARE(c.mapToGlobal(QPoint(100, 100)), QPoint(170, 170)); - - QCOMPARE(a.mapFromGlobal(QPoint(100, 100)), QPoint(90, 90)); - QCOMPARE(b.mapFromGlobal(QPoint(100, 100)), QPoint(70, 70)); - QCOMPARE(c.mapFromGlobal(QPoint(100, 100)), QPoint(30, 30)); -} - -class Window : public QWindow -{ -public: - Window() - { - reset(); - setWindowFlags(Qt::Window | Qt::WindowTitleHint | Qt::WindowMinMaxButtonsHint | Qt::WindowCloseButtonHint); - } - - void reset() - { - m_received.clear(); - } - - bool event(QEvent *event) - { - m_received[event->type()]++; - - return QWindow::event(event); - } - - int received(QEvent::Type type) - { - return m_received.value(type, 0); - } - -private: - QHash m_received; -}; - -void tst_QWindow::positioning() -{ - QRect geometry(80, 80, 40, 40); - - Window window; - window.setGeometry(geometry); - QCOMPARE(window.geometry(), geometry); - window.show(); - - QTRY_COMPARE(window.received(QEvent::Resize), 1); - QTRY_COMPARE(window.received(QEvent::Map), 1); - - QMargins originalMargins = window.frameMargins(); - - QCOMPARE(window.pos(), window.framePos() + QPoint(originalMargins.left(), originalMargins.top())); - QVERIFY(window.frameGeometry().contains(window.geometry())); - - QPoint originalPos = window.pos(); - QPoint originalFramePos = window.framePos(); - - window.setWindowState(Qt::WindowFullScreen); - QTRY_COMPARE(window.received(QEvent::Resize), 2); - - window.setWindowState(Qt::WindowNoState); - QTRY_COMPARE(window.received(QEvent::Resize), 3); - - QTRY_COMPARE(originalPos, window.pos()); - QTRY_COMPARE(originalFramePos, window.framePos()); - QTRY_COMPARE(originalMargins, window.frameMargins()); - - // if our positioning is actually fully respected by the window manager - // test whether it correctly handles frame positioning as well - if (originalPos == geometry.topLeft() && (originalMargins.top() != 0 || originalMargins.left() != 0)) { - QPoint framePos(40, 40); - - window.reset(); - window.setFramePos(framePos); - - QTRY_VERIFY(window.received(QEvent::Move)); - QTRY_COMPARE(framePos, window.framePos()); - QTRY_COMPARE(originalMargins, window.frameMargins()); - QCOMPARE(window.pos(), window.framePos() + QPoint(originalMargins.left(), originalMargins.top())); - - // and back to regular positioning - - window.reset(); - window.setPos(originalPos); - QTRY_VERIFY(window.received(QEvent::Move)); - QTRY_COMPARE(originalPos, window.pos()); - } -} - -void tst_QWindow::isActive() -{ - Window window; - window.setGeometry(80, 80, 40, 40); - window.show(); - - QTRY_COMPARE(window.received(QEvent::Map), 1); - QTRY_COMPARE(window.received(QEvent::Resize), 1); - QTRY_VERIFY(QGuiApplication::focusWindow() == &window); - QVERIFY(window.isActive()); - - Window child; - child.setParent(&window); - child.setGeometry(10, 10, 20, 20); - child.show(); - - QTRY_COMPARE(child.received(QEvent::Map), 1); - - child.requestActivateWindow(); - - QTRY_VERIFY(QGuiApplication::focusWindow() == &child); - QVERIFY(child.isActive()); - - // parent shouldn't receive new map or resize events from child being shown - QTRY_COMPARE(window.received(QEvent::Map), 1); - QTRY_COMPARE(window.received(QEvent::Resize), 1); - QTRY_COMPARE(window.received(QEvent::FocusIn), 1); - QTRY_COMPARE(window.received(QEvent::FocusOut), 1); - QTRY_COMPARE(child.received(QEvent::FocusIn), 1); - - // child has focus - QVERIFY(window.isActive()); - - Window dialog; - dialog.setTransientParent(&window); - dialog.setGeometry(110, 110, 30, 30); - dialog.show(); - - dialog.requestActivateWindow(); - - QTRY_COMPARE(dialog.received(QEvent::Map), 1); - QTRY_COMPARE(dialog.received(QEvent::Resize), 1); - QTRY_VERIFY(QGuiApplication::focusWindow() == &dialog); - QVERIFY(dialog.isActive()); - - // transient child has focus - QVERIFY(window.isActive()); - - // parent is active - QVERIFY(child.isActive()); - - window.requestActivateWindow(); - - QTRY_VERIFY(QGuiApplication::focusWindow() == &window); - QTRY_COMPARE(dialog.received(QEvent::FocusOut), 1); - QTRY_COMPARE(window.received(QEvent::FocusIn), 2); - - QVERIFY(window.isActive()); - - // transient parent has focus - QVERIFY(dialog.isActive()); - - // parent has focus - QVERIFY(child.isActive()); -} - -#include -QTEST_MAIN(tst_QWindow); -- cgit v1.2.3