summaryrefslogtreecommitdiffstats
path: root/tests/auto/qml-qtquicktest/tst_chartviewfunctions_1_4.qml
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/qml-qtquicktest/tst_chartviewfunctions_1_4.qml')
-rw-r--r--tests/auto/qml-qtquicktest/tst_chartviewfunctions_1_4.qml160
1 files changed, 160 insertions, 0 deletions
diff --git a/tests/auto/qml-qtquicktest/tst_chartviewfunctions_1_4.qml b/tests/auto/qml-qtquicktest/tst_chartviewfunctions_1_4.qml
new file mode 100644
index 00000000..36745a73
--- /dev/null
+++ b/tests/auto/qml-qtquicktest/tst_chartviewfunctions_1_4.qml
@@ -0,0 +1,160 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Digia Plc
+** All rights reserved.
+** For any questions to Digia, please use contact form at http://qt.digia.com
+**
+** This file is part of the Qt Enterprise Charts Add-on.
+**
+** $QT_BEGIN_LICENSE$
+** Licensees holding valid Qt Enterprise licenses may use this file in
+** accordance with the Qt Enterprise License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia.
+**
+** If you have questions regarding the use of this file, please use
+** contact form at http://qt.digia.com
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.0
+import QtTest 1.0
+import QtCharts 1.4
+
+Rectangle {
+ width: 400
+ height: 300
+
+ TestCase {
+ id: tc1
+ name: "tst_qml-qtquicktest ChartView Functions 1.4"
+ when: windowShown
+
+ function test_chartViewSeriesAndAxes() {
+ // Create XY series
+ var line = chartView.createSeries(ChartView.SeriesTypeLine, "line");
+ verify(line != null && line != undefined);
+ var spline = chartView.createSeries(ChartView.SeriesTypeSpline, "spline");
+ verify(spline != null && spline != undefined);
+ var scatter = chartView.createSeries(ChartView.SeriesTypeScatter, "scatter");
+ verify(scatter != null && scatter != undefined);
+
+ // Create a series with specific axes
+ var line2 = chartView.createSeries(ChartView.SeriesTypeLine, "line2", chartView.axisX(line), chartView.axisY(line));
+
+ // Check that all the XY series use the same axes
+ verify(chartView.axisX(line) != null);
+ verify(chartView.axisY(line) != null);
+ compare(chartView.axisX(line), chartView.axisX(line2));
+ compare(chartView.axisY(line), chartView.axisY(line2));
+ compare(chartView.axisX(line), chartView.axisX(spline));
+ compare(chartView.axisY(line), chartView.axisY(spline));
+ compare(chartView.axisX(line), chartView.axisX(scatter));
+ compare(chartView.axisY(line), chartView.axisY(scatter));
+
+ var bar = chartView.createSeries(ChartView.SeriesTypeBar, "bar");
+ verify(bar != null && bar != undefined);
+ var stackedbar = chartView.createSeries(ChartView.SeriesTypeStackedBar, "stackedbar");
+ verify(stackedbar != null && stackedbar != undefined);
+ var percentbar = chartView.createSeries(ChartView.SeriesTypePercentBar, "percentbar");
+ verify(percentbar != null && percentbar != undefined);
+ var horizontalbar = chartView.createSeries(ChartView.SeriesTypeHorizontalBar, "horizontalbar");
+ verify(horizontalbar != null && horizontalbar != undefined);
+ var horizontalstackedbar = chartView.createSeries(ChartView.SeriesTypeHorizontalStackedBar, "horizontalstackedbar");
+ verify(horizontalstackedbar != null && horizontalstackedbar != undefined);
+ var horizontalpercentbar = chartView.createSeries(ChartView.SeriesTypeHorizontalPercentBar, "horizontalpercentbar");
+ verify(horizontalpercentbar != null && horizontalpercentbar != undefined);
+ var area = chartView.createSeries(ChartView.SeriesTypeArea, "area");
+ verify(area != null && area != undefined);
+
+ // Remove all series
+ chartView.removeAllSeries();
+ compare(chartView.count, 0);
+ }
+
+ function test_chartViewRange() {
+ // Set initial values
+ chartView.createSeries(ChartView.SeriesTypeLine, "line");
+ verify(chartView.axisX() != null);
+ verify(chartView.axisY() != null);
+ chartView.axisX().min = 1.0;
+ chartView.axisX().max = 2.0;
+ chartView.axisY().min = 1.0;
+ chartView.axisY().max = 2.0;
+
+ var xMax = chartView.axisX().max;
+ var xMin = chartView.axisX().min;
+ var yMax = chartView.axisY().max;
+ var yMin = chartView.axisY().min;
+
+ // zoom x 2.5
+ chartView.zoom(1.5);
+ verify(chartView.axisX().max < xMax);
+ verify(chartView.axisX().min > xMin);
+ verify(chartView.axisY().max < yMax);
+ verify(chartView.axisY().min > yMin);
+ xMax = chartView.axisX().max;
+ xMin = chartView.axisX().min;
+ yMax = chartView.axisY().max;
+ yMin = chartView.axisY().min;
+
+ // zoom x 0.5
+ chartView.zoom(0.5);
+ verify(chartView.axisX().max > xMax);
+ verify(chartView.axisX().min < xMin);
+ verify(chartView.axisY().max > yMax);
+ verify(chartView.axisY().min < yMin);
+ xMax = chartView.axisX().max;
+ xMin = chartView.axisX().min;
+ yMax = chartView.axisY().max;
+ yMin = chartView.axisY().min;
+
+ // Scroll up
+ chartView.scrollUp(10);
+ compare(chartView.axisX().max, xMax);
+ compare(chartView.axisX().min, xMin);
+ verify(chartView.axisY().max > yMax);
+ verify(chartView.axisY().min > yMin);
+ xMax = chartView.axisX().max;
+ xMin = chartView.axisX().min;
+ yMax = chartView.axisY().max;
+ yMin = chartView.axisY().min;
+
+ // Scroll down
+ chartView.scrollDown(10);
+ compare(chartView.axisX().max, xMax);
+ compare(chartView.axisX().min, xMin);
+ verify(chartView.axisY().max < yMax);
+ verify(chartView.axisY().min < yMin);
+ xMax = chartView.axisX().max;
+ xMin = chartView.axisX().min;
+ yMax = chartView.axisY().max;
+ yMin = chartView.axisY().min;
+
+ // Scroll left
+ chartView.scrollLeft(10);
+ verify(chartView.axisX().max < xMax);
+ verify(chartView.axisX().min < xMin);
+ compare(chartView.axisY().max, yMax);
+ compare(chartView.axisY().min, yMin);
+ xMax = chartView.axisX().max;
+ xMin = chartView.axisX().min;
+ yMax = chartView.axisY().max;
+ yMin = chartView.axisY().min;
+
+ // Scroll right
+ chartView.scrollRight(10);
+ verify(chartView.axisX().max > xMax);
+ verify(chartView.axisX().min > xMin);
+ compare(chartView.axisY().max, yMax);
+ compare(chartView.axisY().min, yMin);
+ }
+ }
+
+ ChartView {
+ id: chartView
+ anchors.fill: parent
+ title: "Chart"
+ }
+}