summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--js_tests/gis/mapwidget.test.js46
-rw-r--r--js_tests/tests.html9
-rw-r--r--package.json2
3 files changed, 56 insertions, 1 deletions
diff --git a/js_tests/gis/mapwidget.test.js b/js_tests/gis/mapwidget.test.js
new file mode 100644
index 0000000000..c46823c9b9
--- /dev/null
+++ b/js_tests/gis/mapwidget.test.js
@@ -0,0 +1,46 @@
+/* global module, test, MapWidget */
+/* eslint global-strict: 0, strict: 0 */
+'use strict';
+
+module('gis.OLMapWidget');
+
+test('MapWidget.featureAdded', function(assert) {
+ var options = {id: 'id_point', map_id: 'id_point_map', geom_name: 'Point'};
+ var widget = new MapWidget(options);
+ assert.equal(widget.layers.vector.features.length, 1);
+ assert.equal(
+ widget.layers.vector.features[0].geometry.toString(),
+ 'POINT(7.8177 47.397)',
+ 'Point addded to vector layer'
+ );
+});
+
+test('MapWidget.map_srid', function(assert) {
+ var options = {id: 'id_point', map_id: 'id_point_map', geom_name: 'Point'};
+ var widget = new MapWidget(options);
+ assert.equal(widget.options.map_srid, 4326, 'SRID 4326');
+});
+
+test('MapWidget.defaultCenter', function(assert) {
+ var options = {id: 'id_point', map_id: 'id_point_map', geom_name: 'Point'};
+ var widget = new MapWidget(options);
+ assert.equal(widget.defaultCenter().toString(), 'lon=0,lat=0', 'Default center at 0, 0');
+ options.default_lat = 47.08;
+ options.default_lon = 6.81;
+ widget = new MapWidget(options);
+ assert.equal(
+ widget.defaultCenter().toString(),
+ 'lon=6.81,lat=47.08',
+ 'Default center at 6.81, 47.08'
+ );
+});
+
+test('MapWidget.getControls', function(assert) {
+ var options = {id: 'id_point', map_id: 'id_point_map', geom_name: 'Point'};
+ var widget = new MapWidget(options);
+ widget.getControls(widget.layers.vector);
+ assert.equal(widget.controls.length, 3);
+ assert.equal(widget.controls[0].displayClass, 'olControlNavigation', 'Navigation control');
+ assert.equal(widget.controls[1].displayClass, 'olControlDrawFeaturePoint', 'Draw control');
+ assert.equal(widget.controls[2].displayClass, 'olControlModifyFeature', 'Modify control');
+});
diff --git a/js_tests/tests.html b/js_tests/tests.html
index 13c6bcd693..568c2a5bb7 100644
--- a/js_tests/tests.html
+++ b/js_tests/tests.html
@@ -78,6 +78,15 @@
<script src='../django/contrib/admin/static/admin/js/prepopulate.js' data-cover></script>
<script src='../django/contrib/admin/static/admin/js/urlify.js' data-cover></script>
+ <div id="id_point_map">
+ <textarea id="id_point" name="point"
+ class="vSerializedField required" style="display:none;"
+ rows="10" cols="150">POINT (7.8177 47.397)</textarea>
+ </div>
+ <script src='http://openlayers.org/api/2.13.1/OpenLayers.js'></script>
+ <script src='../django/contrib/gis/static/gis/js/OLMapWidget.js' data-cover></script>
+ <script src='./gis/mapwidget.test.js'></script>
+
<script>
if (location.href.match(/(\?|&)gruntReport($|&|=)/)) {
blanket.options("reporter", "qunit/grunt-reporter.js");
diff --git a/package.json b/package.json
index 6b8e035c38..97fac62679 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "Django",
"private": true,
"scripts": {
- "pretest": "eslint django/ js_tests/admin/",
+ "pretest": "eslint django/ js_tests/admin/ js_tests/gis/",
"test": "grunt test --verbose"
},
"devDependencies": {