summaryrefslogtreecommitdiff
path: root/tests/auto/qgeocoordinate
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2014-10-09 15:50:16 +0200
committerAlex Blasche <alexander.blasche@digia.com>2014-10-13 09:32:40 +0200
commiteebf55a6919dff9eec4dd8529223aae6f6d0f569 (patch)
tree91e6f31e2bf18941e07d183bb0efa603061a4272 /tests/auto/qgeocoordinate
parentbbb2aa81c4cb58cb29ab3b5146b9b5cb909cd1c9 (diff)
downloadqtlocation-eebf55a6919dff9eec4dd8529223aae6f6d0f569.tar.gz
Fix QGeoCoordinate::toString() when rounding long/lat corner cases
Change-Id: I14da28acbd124e07da42fbf5efc3a501267f86f3 Task-number: QTBUG-41739 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'tests/auto/qgeocoordinate')
-rw-r--r--tests/auto/qgeocoordinate/tst_qgeocoordinate.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/auto/qgeocoordinate/tst_qgeocoordinate.cpp b/tests/auto/qgeocoordinate/tst_qgeocoordinate.cpp
index 6979588c..142873dd 100644
--- a/tests/auto/qgeocoordinate/tst_qgeocoordinate.cpp
+++ b/tests/auto/qgeocoordinate/tst_qgeocoordinate.cpp
@@ -819,6 +819,28 @@ private slots:
QTest::newRow("SW with alt, dms, hemisphere, 28.2341m")
<< southWestWithAlt << QGeoCoordinate::DegreesMinutesSecondsWithHemisphere
<< QString("27%1 28' 3.3\" S, 153%1 1' 40.4\" W, 28.2341m").arg(DEGREES_SYMB);
+
+ QTest::newRow("Wrap seconds to Minutes DMSH")
+ << QGeoCoordinate(1.1333333, 1.1333333) << QGeoCoordinate::DegreesMinutesSecondsWithHemisphere
+ << QString( "1%1 8' 0.0\" N, 1%1 8' 0.0\" E").arg(DEGREES_SYMB);
+ QTest::newRow("Wrap seconds to Minutes DMS")
+ << QGeoCoordinate(1.1333333, 1.1333333) << QGeoCoordinate::DegreesMinutesSeconds
+ << QString( "1%1 8' 0.0\", 1%1 8' 0.0\"").arg(DEGREES_SYMB);
+ QTest::newRow("Wrap minutes to Degrees DMH")
+ << QGeoCoordinate(1.999999, 1.999999) << QGeoCoordinate::DegreesMinutesWithHemisphere
+ << QString( "2%1 0.000' N, 2%1 0.000' E").arg(DEGREES_SYMB);
+ QTest::newRow("Wrap minutes to Degrees DM")
+ << QGeoCoordinate(1.999999, 1.999999) << QGeoCoordinate::DegreesMinutes
+ << QString( "2%1 0.000', 2%1 0.000'").arg(DEGREES_SYMB);
+
+ QTest::newRow("Wrap seconds to minutes to Degrees DM -> above valid long/lat values")
+ << QGeoCoordinate(89.9999, 179.9999) << QGeoCoordinate::DegreesMinutesSeconds
+ << QString( "90%1 0' 0.0\", 180%1 0' 0.0\"").arg(DEGREES_SYMB);
+
+ QTest::newRow("Wrap minutes to Degrees DM ->above valid long/lat values")
+ << QGeoCoordinate(89.9999, 179.9999) << QGeoCoordinate::DegreesMinutes
+ << QString( "90%1 0.000', 180%1 0.000'").arg(DEGREES_SYMB);
+
}
void datastream()