]> dev.renevier.net Git - syp.git/blob - openlayers/tests/Control/MousePosition.html
initial commit
[syp.git] / openlayers / tests / Control / MousePosition.html
1 <html>
2 <head>
3   <script src="../../lib/OpenLayers.js"></script>
4   <script type="text/javascript">
5     var map, control; 
6     function test_initialize (t) {
7         t.plan( 2 );
8     
9         control = new OpenLayers.Control.MousePosition();
10         t.ok( control instanceof OpenLayers.Control.MousePosition, "new OpenLayers.Control returns object" );
11         t.eq( control.displayClass,  "olControlMousePosition", "displayClass is correct" );
12     }
13     function test_redraw_noLayer_displayProjection(t) {
14         t.plan(2);
15         control = new OpenLayers.Control.MousePosition({'displayProjection': new OpenLayers.Projection("WGS84")});
16         map = new OpenLayers.Map('map');
17         map.addControl(control);
18         control.redraw({'xy': new OpenLayers.Pixel(10,10)});
19         control.redraw({'xy': new OpenLayers.Pixel(12,12)});
20         t.eq(control.div.innerHTML, "", "innerHTML set correctly");
21         l = new OpenLayers.Layer('name', {'isBaseLayer': true});
22         map.addLayer(l);
23         map.zoomToMaxExtent();
24         control.redraw({'xy': new OpenLayers.Pixel(10,10)});
25         control.redraw({'xy': new OpenLayers.Pixel(12,12)});
26         t.eq(control.div.innerHTML, "-175.78125, 85.78125", "innerHTML set correctly when triggered.");
27     }
28     function test_destroy(t) {
29         t.plan(1);
30     
31         var map = new OpenLayers.Map('map');
32         var control = new OpenLayers.Control.MousePosition();
33         map.addControl(control);
34
35         var listeners = map.events.listeners.mousemove.length;
36         control.destroy();
37         
38         t.eq(map.events.listeners.mousemove.length, listeners - 1, "mousemove event is unregistered");
39         map.destroy();     
40     }
41     function test_addControl(t) {
42         t.plan(4);
43
44         var map = new OpenLayers.Map('map');
45         var control = new OpenLayers.Control.MousePosition();
46         map.addControl(control);
47
48         t.ok(control.map === map, "Control.map is set to the map object");
49         t.ok(map.controls[map.controls.length - 1] === control, "map.controls contains control");
50         t.eq(parseInt(control.div.style.zIndex), map.Z_INDEX_BASE['Control'] + 5, "Control div zIndexed properly" );
51         t.eq(parseInt(map.viewPortDiv.lastChild.style.zIndex), map.Z_INDEX_BASE['Control'] + 5, "Viewport div contains control div");
52         map.destroy();     
53     }
54     function test_redraw_noLayer_displayProjection(t) {
55         t.plan(3);
56         var control = new OpenLayers.Control.MousePosition();
57         var map = new OpenLayers.Map('map');
58         map.addControl(control);
59         t.eq(control.div.innerHTML, "0.00000, 0.00000", "innerHTML set correctly");
60         control.redraw({'xy': new OpenLayers.Pixel(10,10)});
61         control.redraw({'xy': new OpenLayers.Pixel(12,12)});
62         t.eq(control.div.innerHTML, "0.00000, 0.00000", "innerHTML set correctly");
63         var l = new OpenLayers.Layer('name', {'isBaseLayer': true});
64         map.addLayer(l);
65         map.zoomToMaxExtent();
66         control.redraw({'xy': new OpenLayers.Pixel(10,10)});
67         control.redraw({'xy': new OpenLayers.Pixel(12,12)});
68         t.eq(control.div.innerHTML, "-175.78125, 85.78125", "innerHTML set correctly when triggered.");
69         map.destroy();     
70     }
71     function test_formatOutput(t) {
72         t.plan(1);
73         var control = new OpenLayers.Control.MousePosition({
74             prefix: 'prefix',
75             suffix: 'suffix',
76             separator: 'separator',
77             numDigits: 3
78         });
79         var lonlat = new OpenLayers.LonLat(0.75699, 0.37365);
80         var val = control.formatOutput(lonlat);
81         t.eq(val, 'prefix0.757separator0.374suffix', 'formatOutput correctly formats the mouse position output');
82     }
83   </script>
84 </head>
85 <body>
86     <div id="map" style="width: 1024px; height: 512px;"/>
87 </body>
88 </html>