diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml | 75 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_tableview.qml | 15 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_treeview.qml | 1 | ||||
-rw-r--r-- | tests/benchmarks/startup/gallery.qrc | 1 | ||||
-rw-r--r-- | tests/benchmarks/startup/startup_bench.cpp | 37 | ||||
-rw-r--r-- | tests/benchmarks/startup/timer.qml | 7 |
6 files changed, 109 insertions, 27 deletions
diff --git a/tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml b/tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml new file mode 100644 index 00000000..d11bce97 --- /dev/null +++ b/tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2018 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the test suite of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:BSD$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** BSD License Usage +** Alternatively, you may use this file under the terms of the BSD license +** as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of The Qt Company Ltd nor the names of its +** contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +import QtQuick 2.2 +import QtQuick.Controls 1.2 + +TableView { + id: tableView + Component { + id: columnComponentWithDelegate + TableViewColumn { + delegate: Rectangle { + implicitWidth: 50 + height: 10 + color: "red" + } + } + } + Component { + id: columnComponent + TableViewColumn { } + } + Component.onCompleted: { + addColumn(columnComponentWithDelegate.createObject(tableView, { title: "rects", width: 20 })); + addColumn(columnComponent.createObject(tableView, { title: "numbers" })); + } + model: 10 +} diff --git a/tests/auto/controls/data/tst_tableview.qml b/tests/auto/controls/data/tst_tableview.qml index fe50f241..08bf1d9d 100644 --- a/tests/auto/controls/data/tst_tableview.qml +++ b/tests/auto/controls/data/tst_tableview.qml @@ -1131,5 +1131,20 @@ TestCase { tableView.moveColumn(0, 1); compare(tableView.sortIndicatorColumn, 1); } + + function test_resize_dynamic_columns() { + var component = Qt.createComponent("tableview/table_resizedynamiccolumns.qml") + compare(component.status, Component.Ready) + var table = createTemporaryObject(component, container); + verify(table !== null, "table created is null") + waitForRendering(table) + compare(table.getColumn(0).width, 20) + table.getColumn(0).resizeToContents() + tryCompare(table.getColumn(0), "width", 50) + table.getColumn(0).width = 20 + compare(table.getColumn(0).width, 20) + table.resizeColumnsToContents() + compare(table.getColumn(0).width, 50) + } } } diff --git a/tests/auto/controls/data/tst_treeview.qml b/tests/auto/controls/data/tst_treeview.qml index b46d4dc2..139be338 100644 --- a/tests/auto/controls/data/tst_treeview.qml +++ b/tests/auto/controls/data/tst_treeview.qml @@ -747,7 +747,6 @@ Item { } function test_indexAt() { - skip("Fails because of bug QTBUG-47523") var component = Qt.createComponent("treeview/treeview_1.qml") compare(component.status, Component.Ready) var tree = component.createObject(container); diff --git a/tests/benchmarks/startup/gallery.qrc b/tests/benchmarks/startup/gallery.qrc index 2cabf889..1a84303a 100644 --- a/tests/benchmarks/startup/gallery.qrc +++ b/tests/benchmarks/startup/gallery.qrc @@ -1,6 +1,5 @@ <RCC> <qresource prefix="/"> - <file>timer.qml</file> <file alias="main.qml">../../../examples/quickcontrols/controls/gallery/main.qml</file> <file alias="qml/ButtonPage.qml">../../../examples/quickcontrols/controls/gallery/qml/ButtonPage.qml</file> <file alias="qml/InputPage.qml">../../../examples/quickcontrols/controls/gallery/qml/InputPage.qml</file> diff --git a/tests/benchmarks/startup/startup_bench.cpp b/tests/benchmarks/startup/startup_bench.cpp index cdc754ec..ea510e8c 100644 --- a/tests/benchmarks/startup/startup_bench.cpp +++ b/tests/benchmarks/startup/startup_bench.cpp @@ -50,29 +50,26 @@ #include "qtquickcontrolsapplication.h" #include <QtQml/QQmlApplicationEngine> +#include <QQuickWindow> #include <QtCore/QElapsedTimer> #include <functional> #include <stdio.h> -int runBenchmark(std::function<int()> f) { +int runBenchmark(std::function<qint64()> f) { { - QElapsedTimer t; - t.start(); - int r = f(); - if (r == 0) - printf("%d,", static_cast<int>(t.elapsed())); + auto r = f(); + if (r >= 0) + printf("%d,", static_cast<int>(r)); else - return r; + return -1; } { - QElapsedTimer t; - t.start(); - int r = f(); - if (r == 0) - printf("%d\n", static_cast<int>(t.elapsed())); + auto r = f(); + if (r >= 0) + printf("%d\n", static_cast<int>(r)); else - return r; + return -1; } return 0; @@ -83,14 +80,18 @@ int main(int argc, char *argv[]) { QtQuickControlsApplication app(argc, argv); - auto startup = [&app]() { + auto startup = [&app]() -> qint64 { + QElapsedTimer timer; + timer.start(); QQmlApplicationEngine engine(QUrl("qrc:/main.qml")); - QObject::connect(&engine, &QQmlApplicationEngine::quit, + if (engine.rootObjects().size() != 1) + return -1; + QQuickWindow *window = qobject_cast<QQuickWindow*>(engine.rootObjects().first()); + QObject::connect(window, &QQuickWindow::frameSwapped, QCoreApplication::instance(), &QCoreApplication::quit); - engine.load(QUrl("qrc:/timer.qml")); - if (engine.rootObjects().size() != 2) + if (app.exec() != 0) return -1; - return app.exec(); + return timer.elapsed(); }; return runBenchmark(startup); diff --git a/tests/benchmarks/startup/timer.qml b/tests/benchmarks/startup/timer.qml deleted file mode 100644 index a0e9f1c1..00000000 --- a/tests/benchmarks/startup/timer.qml +++ /dev/null @@ -1,7 +0,0 @@ -import QtQuick 2.2 - -Timer { - running: true - interval: 0 - onTriggered: Qt.quit(); -} |