summaryrefslogtreecommitdiff
path: root/tests/auto
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/declarative_ui/tst_map_coordinateanimation.qml135
-rw-r--r--tests/auto/doublevectors/doublevectors.pro7
-rw-r--r--tests/auto/doublevectors/tst_doublevectors.cpp4
-rw-r--r--tests/auto/geotestplugin/geotestplugin.pro2
-rw-r--r--tests/auto/qgeocameracapabilities/qgeocameracapabilities.pro2
-rw-r--r--tests/auto/qgeocameradata/qgeocameradata.pro2
-rw-r--r--tests/auto/qgeocameradata/tst_qgeocameradata.cpp24
-rw-r--r--tests/auto/qgeocameratiles/qgeocameratiles.pro2
-rw-r--r--tests/auto/qgeocameratiles/tst_qgeocameratiles.cpp4
-rw-r--r--tests/auto/qgeomapcontroller/qgeomapcontroller.pro2
-rw-r--r--tests/auto/qgeomapcontroller/tst_qgeomapcontroller.cpp70
-rw-r--r--tests/auto/qgeomapscene/qgeomapscene.pro2
-rw-r--r--tests/auto/qgeomapscene/tst_qgeomapscene.cpp5
13 files changed, 172 insertions, 89 deletions
diff --git a/tests/auto/declarative_ui/tst_map_coordinateanimation.qml b/tests/auto/declarative_ui/tst_map_coordinateanimation.qml
new file mode 100644
index 00000000..72c6aed8
--- /dev/null
+++ b/tests/auto/declarative_ui/tst_map_coordinateanimation.qml
@@ -0,0 +1,135 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** 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 Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, 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, Digia gives you certain additional
+** rights. These rights are described in the Digia 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.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.0
+import QtTest 1.0
+import QtLocation 5.0
+import QtPositioning 5.3
+
+Item {
+ width:100
+ height:100
+ // General-purpose elements for the test:
+ Plugin { id: testPlugin; name: "qmlgeo.test.plugin"; allowExperimental: true }
+
+
+ property var coordinateList: []
+ property int coordinateCount: 0
+ property int animationDuration: 100
+
+ Map {id: map
+ plugin: testPlugin
+ width: 100
+ height: 100
+ Behavior on center { CoordinateAnimation { duration: animationDuration } }
+
+ onCenterChanged: {
+ if (!coordinateList) {
+ coordinateList = []
+ }
+
+ coordinateList[coordinateCount] = {'latitude': center.latitude, 'longitude': center.longitude}
+ coordinateCount++
+ }
+ }
+
+ function toMercator(coord) {
+ var pi = Math.PI
+ var lon = coord.longitude / 360.0 + 0.5;
+
+ var lat = coord.latitude;
+ lat = 0.5 - (Math.log(Math.tan((pi / 4.0) + (pi / 2.0) * lat / 180.0)) / pi) / 2.0;
+ lat = Math.max(0.0, lat);
+ lat = Math.min(1.0, lat);
+
+ return {'latitude': lat, 'longitude': lon};
+ }
+
+ TestCase {
+ when: windowShown
+ name: "Coordinate animation"
+
+ function test_coordinate_animation() {
+
+ coordinateList = []
+ coordinateCount = 0
+
+ var from = {'latitude': 58.0, 'longitude': 12.0}
+ var to = {'latitude': 62.0, 'longitude': 24.0}
+
+
+ var fromMerc = toMercator(from)
+ var toMerc = toMercator(to)
+
+ var delta = (toMerc.latitude - fromMerc.latitude) / (toMerc.longitude - fromMerc.longitude)
+
+ map.center = QtPositioning.coordinate(from.latitude, from.longitude)
+ wait(animationDuration * 2)
+ map.center = QtPositioning.coordinate(to.latitude, to.longitude)
+ wait(animationDuration * 2)
+
+ //check correct start position
+ compare(coordinateList[0].latitude, from.latitude)
+ compare(coordinateList[0].longitude, from.longitude)
+
+ //check correct end position
+ compare(coordinateList[coordinateList.length - 1].latitude, to.latitude)
+ compare(coordinateList[coordinateList.length - 1].longitude, to.longitude)
+
+ var i
+ var lastLatitude
+ for (i in coordinateList) {
+ var coordinate = coordinateList[i]
+ var mercCoordinate = toMercator(coordinate)
+
+ //check that coordinates from the animation is along a straight line between from and to
+ var estimatedLatitude = fromMerc.latitude + (mercCoordinate.longitude - fromMerc.longitude) * delta
+ verify(mercCoordinate.latitude - estimatedLatitude < 0.00000000001);
+
+ //check that each step has moved in the right direction
+ if (lastLatitude) {
+ verify(coordinate.latitude > lastLatitude)
+ }
+ lastLatitude = coordinate.latitude
+ }
+ }
+ }
+}
diff --git a/tests/auto/doublevectors/doublevectors.pro b/tests/auto/doublevectors/doublevectors.pro
index 98899218..aa42120d 100644
--- a/tests/auto/doublevectors/doublevectors.pro
+++ b/tests/auto/doublevectors/doublevectors.pro
@@ -1,11 +1,8 @@
TEMPLATE = app
CONFIG += testcase
TARGET = tst_doublevectors
-INCLUDEPATH += ../../../src/location/maps
-SOURCES += tst_doublevectors.cpp \
- ../../../src/location/maps/qdoublevector3d.cpp \
- ../../../src/location/maps/qdoublevector2d.cpp
+SOURCES += tst_doublevectors.cpp
-QT += location testlib
+QT += positioning-private testlib
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/doublevectors/tst_doublevectors.cpp b/tests/auto/doublevectors/tst_doublevectors.cpp
index 9ca1ec17..79fe3a88 100644
--- a/tests/auto/doublevectors/tst_doublevectors.cpp
+++ b/tests/auto/doublevectors/tst_doublevectors.cpp
@@ -42,8 +42,8 @@
#include <QtCore/QString>
#include <QtTest/QtTest>
-#include "qdoublevector2d_p.h"
-#include "qdoublevector3d_p.h"
+#include <QtPositioning/private/qdoublevector2d_p.h>
+#include <QtPositioning/private/qdoublevector3d_p.h>
QT_USE_NAMESPACE
diff --git a/tests/auto/geotestplugin/geotestplugin.pro b/tests/auto/geotestplugin/geotestplugin.pro
index 3737414e..2519b7d0 100644
--- a/tests/auto/geotestplugin/geotestplugin.pro
+++ b/tests/auto/geotestplugin/geotestplugin.pro
@@ -1,5 +1,5 @@
TARGET = qtgeoservices_qmltestplugin
-QT += location-private testlib
+QT += location-private positioning-private testlib
PLUGIN_TYPE = geoservices
load(qt_plugin)
diff --git a/tests/auto/qgeocameracapabilities/qgeocameracapabilities.pro b/tests/auto/qgeocameracapabilities/qgeocameracapabilities.pro
index db13ac9b..ec406d8b 100644
--- a/tests/auto/qgeocameracapabilities/qgeocameracapabilities.pro
+++ b/tests/auto/qgeocameracapabilities/qgeocameracapabilities.pro
@@ -6,5 +6,5 @@ INCLUDEPATH += ../../../src/location/maps
SOURCES += tst_qgeocameracapabilities.cpp
-QT += location testlib
+QT += location positioning-private testlib
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/qgeocameradata/qgeocameradata.pro b/tests/auto/qgeocameradata/qgeocameradata.pro
index f01d0f34..39f154d2 100644
--- a/tests/auto/qgeocameradata/qgeocameradata.pro
+++ b/tests/auto/qgeocameradata/qgeocameradata.pro
@@ -6,5 +6,5 @@ INCLUDEPATH += ../../../src/location/maps
SOURCES += tst_qgeocameradata.cpp
-QT += location testlib
+QT += location positioning-private testlib
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/qgeocameradata/tst_qgeocameradata.cpp b/tests/auto/qgeocameradata/tst_qgeocameradata.cpp
index 3147f057..e273711a 100644
--- a/tests/auto/qgeocameradata/tst_qgeocameradata.cpp
+++ b/tests/auto/qgeocameradata/tst_qgeocameradata.cpp
@@ -46,21 +46,6 @@
QT_USE_NAMESPACE
-// For testing the setters and getters of the QGeoCoordinateInterpolator shared pointer
-class QGeoCoordinateInterpolatorTest : public QGeoCoordinateInterpolator
-{
-public:
- QGeoCoordinateInterpolatorTest(){}
- ~QGeoCoordinateInterpolatorTest(){}
- QGeoCoordinate interpolate(const QGeoCoordinate &start, const QGeoCoordinate &end, qreal progress){
- Q_UNUSED(start);
- Q_UNUSED(end);
- Q_UNUSED(progress);
- return QGeoCoordinate();
- }
-};
-
-
class tst_QGeoCameraData : public QObject
{
Q_OBJECT
@@ -79,7 +64,6 @@ private Q_SLOTS:
void tiltTest();
void rollTest();
void zoomLevelTest();
- void coordinateInterpolatorTest();
void operatorsTest_data();
void operatorsTest();
};
@@ -198,14 +182,6 @@ void tst_QGeoCameraData::zoomLevelTest(){
QCOMPARE(cameraData2.zoomLevel(),8.0);
}
-void tst_QGeoCameraData::coordinateInterpolatorTest(){
- QGeoCameraData cameraData;
- QVERIFY2(cameraData.coordinateInterpolator().isNull(), "Default coordinate interpolator shared point is not null");
- QSharedPointer<QGeoCoordinateInterpolator> testPointer = QSharedPointer<QGeoCoordinateInterpolator>(new QGeoCoordinateInterpolatorTest());
- cameraData.setCoordinateInterpolator(testPointer);
- QVERIFY2(!cameraData.coordinateInterpolator().isNull(), "Coordinate interpolator shared point is null");
-}
-
void tst_QGeoCameraData::operatorsTest_data(){
populateCameraData();
}
diff --git a/tests/auto/qgeocameratiles/qgeocameratiles.pro b/tests/auto/qgeocameratiles/qgeocameratiles.pro
index 35f188eb..1c53e627 100644
--- a/tests/auto/qgeocameratiles/qgeocameratiles.pro
+++ b/tests/auto/qgeocameratiles/qgeocameratiles.pro
@@ -5,5 +5,5 @@ INCLUDEPATH += ../../../src/location/maps
SOURCES += tst_qgeocameratiles.cpp
-QT += location testlib 3d
+QT += location positioning-private testlib 3d
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/qgeocameratiles/tst_qgeocameratiles.cpp b/tests/auto/qgeocameratiles/tst_qgeocameratiles.cpp
index fb666424..2aa55f49 100644
--- a/tests/auto/qgeocameratiles/tst_qgeocameratiles.cpp
+++ b/tests/auto/qgeocameratiles/tst_qgeocameratiles.cpp
@@ -44,10 +44,10 @@
#include "qgeotilespec_p.h"
#include "qgeocameratiles_p.h"
#include "qgeocameradata_p.h"
-#include "qgeoprojection_p.h"
-#include "qdoublevector2d_p.h"
#include "qgeomaptype_p.h"
+#include <QtPositioning/private/qgeoprojection_p.h>
+#include <QtPositioning/private/qdoublevector2d_p.h>
#include <qtest.h>
#include <QList>
diff --git a/tests/auto/qgeomapcontroller/qgeomapcontroller.pro b/tests/auto/qgeomapcontroller/qgeomapcontroller.pro
index 352960b7..8f5827b9 100644
--- a/tests/auto/qgeomapcontroller/qgeomapcontroller.pro
+++ b/tests/auto/qgeomapcontroller/qgeomapcontroller.pro
@@ -13,5 +13,5 @@ HEADERS += ../geotestplugin/qgeoserviceproviderplugin_test.h \
SOURCES += tst_qgeomapcontroller.cpp
SOURCES += ../geotestplugin/qgeoserviceproviderplugin_test.cpp
-QT += location-private testlib
+QT += location-private positioning-private testlib
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/qgeomapcontroller/tst_qgeomapcontroller.cpp b/tests/auto/qgeomapcontroller/tst_qgeomapcontroller.cpp
index 564b5a3c..0123d375 100644
--- a/tests/auto/qgeomapcontroller/tst_qgeomapcontroller.cpp
+++ b/tests/auto/qgeomapcontroller/tst_qgeomapcontroller.cpp
@@ -81,8 +81,6 @@ private Q_SLOTS:
void rollTest();
void panTest();
void zoomTest();
-
- void animatableCoordinateTest();
};
tst_QGeoMapController::tst_QGeoMapController()
@@ -102,7 +100,7 @@ tst_QGeoMapController::tst_QGeoMapController()
map_->resize(100, 100);
- signalCenterChanged_ = new QSignalSpy(map_->mapController(), SIGNAL(centerChanged(AnimatableCoordinate)));
+ signalCenterChanged_ = new QSignalSpy(map_->mapController(), SIGNAL(centerChanged(QGeoCoordinate)));
signalBearingChanged_ = new QSignalSpy(map_->mapController(), SIGNAL(bearingChanged(qreal)));
signalTiltChanged_ = new QSignalSpy(map_->mapController(), SIGNAL(tiltChanged(qreal)));
signalRollChanged_ = new QSignalSpy(map_->mapController(), SIGNAL(rollChanged(qreal)));
@@ -166,13 +164,12 @@ void tst_QGeoMapController::constructorTest()
cameraData.setRoll(roll);
cameraData.setZoomLevel(zoom);
map_->setCameraData(cameraData);
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
- QGeoMapController mapController(map_, coordinateInterpolator);
+ QGeoMapController mapController(map_);
// make sure the values come out the same
// also make sure the values match what they were actually set to
- QCOMPARE(mapController.center().coordinate(), cameraData.center());
- QCOMPARE(mapController.center().coordinate(), center);
+ QCOMPARE(mapController.center(), cameraData.center());
+ QCOMPARE(mapController.center(), center);
QCOMPARE(mapController.zoom(), cameraData.zoomLevel());
QCOMPARE(mapController.zoom(), zoom);
@@ -192,14 +189,13 @@ void tst_QGeoMapController::constructorTest()
void tst_QGeoMapController::centerTest()
{
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
QGeoCameraData cameraData;
cameraData.setCenter(QGeoCoordinate(10.0,-20.4,30.8));
map_->setCameraData(cameraData);
- QGeoMapController mapController(map_, coordinateInterpolator);
- QCOMPARE(mapController.center().coordinate(),QGeoCoordinate(10.0,-20.4,30.8));
+ QGeoMapController mapController(map_);
+ QCOMPARE(mapController.center(),QGeoCoordinate(10.0,-20.4,30.8));
- AnimatableCoordinate coord(QGeoCoordinate(10.0,20.4,30.8), coordinateInterpolator);
+ QGeoCoordinate coord(10.0,20.4,30.8);
clearSignalSpies();
mapController.setCenter(coord);
@@ -210,10 +206,10 @@ void tst_QGeoMapController::centerTest()
QCOMPARE(signalRollChanged_->count(),0);
QCOMPARE(signalZoomChanged_->count(),0);
- QCOMPARE(mapController.center().coordinate(),QGeoCoordinate(10.0,20.4,30.8));
+ QCOMPARE(mapController.center(),QGeoCoordinate(10.0,20.4,30.8));
- mapController.setCenter(AnimatableCoordinate(QGeoCoordinate(10.0,20.4,30.9), coordinateInterpolator));
- QCOMPARE(mapController.center().coordinate(),QGeoCoordinate(10.0,20.4,30.9));
+ mapController.setCenter(QGeoCoordinate(10.0,20.4,30.9));
+ QCOMPARE(mapController.center(),QGeoCoordinate(10.0,20.4,30.9));
}
void tst_QGeoMapController::bearingTest()
@@ -224,8 +220,7 @@ void tst_QGeoMapController::bearingTest()
QGeoCameraData cameraData;
cameraData.setBearing(bearing);
map_->setCameraData(cameraData);
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
- QGeoMapController mapController(map_, coordinateInterpolator);
+ QGeoMapController mapController(map_);
QCOMPARE(mapController.bearing(),bearing);
clearSignalSpies();
@@ -249,8 +244,7 @@ void tst_QGeoMapController::tiltTest()
QGeoCameraData cameraData;
cameraData.setTilt(tilt);
map_->setCameraData(cameraData);
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
- QGeoMapController mapController(map_, coordinateInterpolator);
+ QGeoMapController mapController(map_);
QCOMPARE(mapController.tilt(),tilt);
tilt = map_->cameraCapabilities().minimumTilt();
@@ -275,8 +269,7 @@ void tst_QGeoMapController::rollTest()
QGeoCameraData cameraData;
cameraData.setRoll(roll);
map_->setCameraData(cameraData);
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
- QGeoMapController mapController(map_, coordinateInterpolator);
+ QGeoMapController mapController(map_);
QCOMPARE(mapController.roll(),roll);
clearSignalSpies();
@@ -294,16 +287,15 @@ void tst_QGeoMapController::rollTest()
void tst_QGeoMapController::panTest()
{
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
- QGeoMapController mapController(map_, coordinateInterpolator);
+ QGeoMapController mapController(map_);
- mapController.setCenter(AnimatableCoordinate(QGeoCoordinate(-1.0,-2.4,3.8), coordinateInterpolator));
+ mapController.setCenter(QGeoCoordinate(-1.0,-2.4,3.8));
// check that pan of zero leaves the camera centre unaltered
mapController.pan(0, 0);
- QCOMPARE(mapController.center().coordinate().altitude(), 3.8);
- QCOMPARE(mapController.center().coordinate().latitude(), -1.0);
- QCOMPARE(mapController.center().coordinate().longitude(), -2.4);
+ QCOMPARE(mapController.center().altitude(), 3.8);
+ QCOMPARE(mapController.center().latitude(), -1.0);
+ QCOMPARE(mapController.center().longitude(), -2.4);
qreal dx = 13.1;
qreal dy = -9.3;
@@ -312,9 +304,9 @@ void tst_QGeoMapController::panTest()
// rather than verify the exact new position, we check that the position has changed and the altitude
// is unaffected
- QCOMPARE(mapController.center().coordinate().altitude(), 3.8);
- QVERIFY(qFuzzyCompare(mapController.center().coordinate().latitude(), -1.0) == false);
- QVERIFY(qFuzzyCompare(mapController.center().coordinate().longitude(), -2.4) == false);
+ QCOMPARE(mapController.center().altitude(), 3.8);
+ QVERIFY(qFuzzyCompare(mapController.center().latitude(), -1.0) == false);
+ QVERIFY(qFuzzyCompare(mapController.center().longitude(), -2.4) == false);
// check correct signal is triggered
QCOMPARE(signalCenterChanged_->count(),1);
@@ -329,8 +321,7 @@ void tst_QGeoMapController::zoomTest()
QGeoCameraData cameraData;
cameraData.setZoomLevel(1.4);
map_->setCameraData(cameraData);
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
- QGeoMapController mapController(map_, coordinateInterpolator);
+ QGeoMapController mapController(map_);
QCOMPARE(mapController.zoom(),1.4);
mapController.setZoom(1.4);
@@ -347,23 +338,6 @@ void tst_QGeoMapController::zoomTest()
QCOMPARE(signalZoomChanged_->count(),1);
}
-void tst_QGeoMapController::animatableCoordinateTest()
-{
- QSharedPointer<QGeoCoordinateInterpolator> coordinateInterpolator;
-
- // modifier tests
- AnimatableCoordinate animCoordinate;
- animCoordinate.setCoordinate(QGeoCoordinate(-1.0,-2.4,3.8));
- QCOMPARE(animCoordinate.coordinate(), QGeoCoordinate(-1.0,-2.4,3.8));
-
- animCoordinate.setInterpolator(coordinateInterpolator);
- QCOMPARE(animCoordinate.interpolator(), coordinateInterpolator);
-
- // constructor test
- AnimatableCoordinate animCoordinateB(QGeoCoordinate(-1.0,-2.4,3.8), coordinateInterpolator);
- QCOMPARE(animCoordinateB.coordinate(), QGeoCoordinate(-1.0,-2.4,3.8));
- QCOMPARE(animCoordinateB.interpolator(), coordinateInterpolator);
-}
QTEST_APPLESS_MAIN(tst_QGeoMapController)
diff --git a/tests/auto/qgeomapscene/qgeomapscene.pro b/tests/auto/qgeomapscene/qgeomapscene.pro
index c7e984e4..a1bacb05 100644
--- a/tests/auto/qgeomapscene/qgeomapscene.pro
+++ b/tests/auto/qgeomapscene/qgeomapscene.pro
@@ -5,5 +5,5 @@ INCLUDEPATH += ../../../src/location/maps
SOURCES += tst_qgeomapscene.cpp
-QT += location 3d testlib
+QT += location positioning-private 3d testlib
DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
diff --git a/tests/auto/qgeomapscene/tst_qgeomapscene.cpp b/tests/auto/qgeomapscene/tst_qgeomapscene.cpp
index eac628c4..57fc474d 100644
--- a/tests/auto/qgeomapscene/tst_qgeomapscene.cpp
+++ b/tests/auto/qgeomapscene/tst_qgeomapscene.cpp
@@ -45,10 +45,11 @@
#include "qgeomapscene_p.h"
#include "qgeocameratiles_p.h"
#include "qgeocameradata_p.h"
-#include "qgeoprojection_p.h"
-#include "qdoublevector2d_p.h"
#include "qgeotilecache_p.h"
+#include <QtPositioning/private/qgeoprojection_p.h>
+#include <QtPositioning/private/qdoublevector2d_p.h>
+
#include <Qt3D/qglscenenode.h>
#include <Qt3D/qgltexture2d.h>