Project

General

Profile

1
<html>
2
<head>
3
  <script src="../lib/OpenLayers.js"></script>
4
  <script type="text/javascript"><!--
5
    var map; 
6
    function test_01_Control_PanZoom_constructor (t) {
7
        t.plan( 1 );
8
    
9
        control = new OpenLayers.Control.PanZoom();
10
        t.ok( control instanceof OpenLayers.Control.PanZoom, "new OpenLayers.Control.PanZoom returns object" );
11
    }
12
    function test_02_Control_PanZoom_addControl (t) {
13
        t.plan( 8 );
14
        map = new OpenLayers.Map('map');
15
        control = new OpenLayers.Control.PanZoom();
16
        t.ok( control instanceof OpenLayers.Control.PanZoom, "new OpenLayers.Control.PanZoom returns object" );
17
        t.ok( map instanceof OpenLayers.Map, "new OpenLayers.Map creates map" );
18
        map.addControl(control);
19
        t.ok( control.map === map, "Control.map is set to the map object" );
20
        t.ok( map.controls[2] === control, "map.controls contains control" );
21
        t.eq( parseInt(control.div.style.zIndex), map.Z_INDEX_BASE['Control'] + 3, "Control div zIndexed properly" );
22
        t.eq( parseInt(map.viewPortDiv.lastChild.style.zIndex), map.Z_INDEX_BASE['Control'] + 3, "Viewport div contains control div" );
23
        t.eq( control.div.style.top, "4px", "Control div top located correctly by default");
24

    
25
        var control2 = new OpenLayers.Control.PanZoom();
26
        map.addControl(control2, new OpenLayers.Pixel(100,100));
27
        t.eq( control2.div.style.top, "100px", "2nd control div is located correctly");
28
    }
29
    function test_03_Control_PanZoom_control_events (t) {
30
        t.plan( 7 );
31
        var evt = {which: 1}; // control expects left-click
32
        map = new OpenLayers.Map('map');
33
        var layer = new OpenLayers.Layer.WMS("Test Layer", 
34
            "http://octo.metacarta.com/cgi-bin/mapserv?",
35
            {map: "/mapdata/vmap_wms.map", layers: "basic"});
36
        map.addLayer(layer);
37

    
38
        control = new OpenLayers.Control.PanZoom();
39
        map.addControl(control, new OpenLayers.Pixel(20,20));
40

    
41
        var centerLL = new OpenLayers.LonLat(0,0); 
42
        map.setCenter(centerLL, 5);
43

    
44
        control.buttons[0].onmousedown(evt);
45
        t.ok( map.getCenter().lat > centerLL.lat, "Pan up works correctly" );
46

    
47
        control.buttons[1].onmousedown(evt);
48
        t.ok( map.getCenter().lon < centerLL.lon, "Pan left works correctly" );
49

    
50
        control.buttons[2].onmousedown(evt);
51
        t.ok( map.getCenter().lon == centerLL.lon, "Pan right works correctly" );
52

    
53
        control.buttons[3].onmousedown(evt);
54
        t.ok( map.getCenter().lat == centerLL.lat, "Pan down works correctly" );
55

    
56
        control.buttons[4].onmousedown(evt);
57
        t.eq( map.getZoom(), 6, "zoomin works correctly" );
58

    
59
        control.buttons[6].onmousedown(evt);
60
        t.eq( map.getZoom(), 5, "zoomout works correctly" );
61

    
62
        control.buttons[5].onmousedown(evt);
63
        t.eq( map.getZoom(), 2, "zoomworld works correctly" );
64

    
65
    }
66
  // -->
67
  </script>
68
</head>
69
<body>
70
    <div id="map" style="width: 1024px; height: 512px;"/>
71
</body>
72
</html>
(10-10/35)