]> dev.renevier.net Git - syp.git/blob - openlayers/tests/Layer/MapGuide.html
initial commit
[syp.git] / openlayers / tests / Layer / MapGuide.html
1 <html>
2 <head>
3     <script type="text/javascript">var oldAlert = window.alert, gMess; window.alert = function(message) {gMess = message; return true;};</script>
4     <script src='http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhR_wWLPFku8Ix9i2SXYRVK3e45q1BQUd_beF8dtzKET_EteAjPdGDwqpQ'></script>
5     <script type="text/javascript">window.alert = oldAlert;</script>
6 <script src="../../lib/OpenLayers.js"></script>
7   <script type="text/javascript">
8     var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
9     var layer; 
10
11     var name = 'MapGuide Test Layer';
12     var url = "http://data.mapguide.com/mapguide/mapagent/mapagent.fcgi?USERNAME=Anonymous&";
13     var paramsTiled = {
14       mapdefinition: 'Library://Samples/Sheboygan/MapsTiled/Sheboygan.MapDefinition',
15       basemaplayergroupname: "Base Layer Group"
16     }
17     var paramsUntiled = {
18       mapdefinition: 'Library://Samples/Sheboygan/Maps/Sheboygan.MapDefinition'
19     };
20
21     function test_Layer_MapGuide_untiled_constructor (t) {
22         t.plan( 8 );
23
24         var trans_format = "image/png";
25         var options = {singleTile:true};
26         if (OpenLayers.Util.alphaHack()) { trans_format = "image/gif"; } 
27         
28         layer = new OpenLayers.Layer.MapGuide(name, url, paramsUntiled, options);
29         t.ok( layer instanceof OpenLayers.Layer.MapGuide, "new OpenLayers.Layer.MapGuide returns object" );
30         t.eq( layer.url, "http://data.mapguide.com/mapguide/mapagent/mapagent.fcgi?USERNAME=Anonymous&", "layer.url is correct (HTTPRequest inited)" );
31         t.eq( layer.params.mapdefinition, "Library://Samples/Sheboygan/Maps/Sheboygan.MapDefinition", "params passed in correctly" );
32
33         t.eq( layer.params.operation, "GETMAPIMAGE", "default params set correctly and copied");
34
35         t.eq(layer.isBaseLayer, true, "no transparency setting, layer is baselayer");
36
37         options.transparent = "true";
38         var layer2 = new OpenLayers.Layer.MapGuide(name, url, paramsUntiled, options);
39         t.eq(layer2.isBaseLayer, false, "transparency == 'true', layer is not baselayer");
40
41         options.transparent = true;
42         var layer5 = new OpenLayers.Layer.MapGuide(name, url, paramsUntiled, options);
43         t.eq(layer5.isBaseLayer, false, "transparency == true, layer is not baselayer");
44
45         options.transparent = false;
46         var layer6 = new OpenLayers.Layer.MapGuide(name, url, paramsUntiled, options);
47         t.eq(layer6.isBaseLayer, true, "transparency == false, layer is baselayer");
48     }
49     
50     function test_Layer_MapGuide_tiled_constructor (t) {
51         t.plan( 5 );
52
53         var trans_format = "image/png";
54         var options = {singleTile:false};
55         if (OpenLayers.Util.alphaHack()) { trans_format = "image/gif"; } 
56         
57         layer = new OpenLayers.Layer.MapGuide(name, url, paramsTiled, options);
58         t.ok( layer instanceof OpenLayers.Layer.MapGuide, "new OpenLayers.Layer.MapGuide returns object" );
59         t.eq( layer.url, "http://data.mapguide.com/mapguide/mapagent/mapagent.fcgi?USERNAME=Anonymous&", "layer.url is correct (HTTPRequest inited)" );
60         t.eq( layer.params.basemaplayergroupname, "Base Layer Group", "params passed in correctly" );
61
62         t.eq( layer.params.operation, "GETTILEIMAGE", "default params correctly uppercased and copied");
63         t.eq( layer.params.version, "1.2.0", "version params set correctly set");
64     }
65     
66     function test_Layer_MapGuide_inittiles (t) {
67         t.plan( 1 );
68         var map = new OpenLayers.Map('map');
69         layer = new OpenLayers.Layer.MapGuide(name, url, paramsTiled);
70         map.addLayer(layer);
71         map.setCenter(new OpenLayers.LonLat(0,400000),5);
72         t.eq( layer.grid.length, 6, "Grid rows is correct." );
73         // t.eq( layer.grid[0].length, 6, "Grid cols is correct." );
74         map.destroy();
75     }
76
77
78     function test_Layer_MapGuide_clone (t) {
79         t.plan(4);
80         
81         var options = {tileSize: new OpenLayers.Size(500,50)};
82         var map = new OpenLayers.Map('map', options);
83         layer = new OpenLayers.Layer.MapGuide(name, url, paramsTiled);
84         map.addLayer(layer);
85
86         layer.grid = [ [6, 7], 
87                        [8, 9]];
88
89         var clone = layer.clone();
90
91         t.eq( layer.tileSize.w, 300, "layer.tileSize fixed to 300x300");
92         t.ok( clone.grid != layer.grid, "clone does not copy grid");
93
94         t.ok( clone.tileSize.equals(layer.tileSize), "tileSize correctly cloned");
95
96         layer.tileSize.w += 40;
97
98         t.eq( clone.alpha, layer.alpha, "alpha copied correctly");
99
100         layer.grid = null;
101         map.destroy();
102     }
103
104     function test_Layer_MapGuide_isBaseLayer(t) {
105         t.plan(3);
106         
107         var options = {singleTile:true};
108         layer = new OpenLayers.Layer.MapGuide(name, url, paramsUntiled, options);
109         t.ok( layer.isBaseLayer, "baselayer is true by default");
110
111         var newParams = OpenLayers.Util.extend({}, paramsUntiled);
112         options.transparent = "true";
113         layer = new OpenLayers.Layer.MapGuide(name, url, newParams, options);
114         t.ok( !layer.isBaseLayer, "baselayer is false when transparent is set to true");
115
116         newParams = OpenLayers.Util.extend({}, paramsUntiled);
117         options.isBaseLayer = false;
118         layer = new OpenLayers.Layer.MapGuide(name, url, newParams, options);
119         t.ok( !layer.isBaseLayer, "baselayer is false when option is set to false" );
120     }
121
122     function test_Layer_MapGuide_mergeNewParams (t) {
123         t.plan( 4 );
124
125         var options = {singleTile:true};
126         var map = new OpenLayers.Map("map");
127         layer = new OpenLayers.Layer.MapGuide(name, url, paramsUntiled, options);
128         
129         var newParams = { mapDefinition: 'Library://Samples/Gmap/Maps/gmap.MapDefinition',
130                           chickpeas: 'image/png'};
131
132         map.addLayer(layer);
133         map.zoomToMaxExtent();
134
135         layer.redraw = function() {
136             t.ok(true, "layer is redrawn after new params merged");
137         }
138
139         layer.mergeNewParams(newParams);
140         
141         t.eq( layer.params.mapDefinition, "Library://Samples/Gmap/Maps/gmap.MapDefinition", "mergeNewParams() overwrites well");
142         t.eq( layer.params.chickpeas, "image/png", "mergeNewParams() adds well");
143     
144         newParams.chickpeas = 151;
145
146         t.eq( layer.params.chickpeas, "image/png", "mergeNewParams() makes clean copy of hashtable");
147         map.destroy();
148     }
149
150     function test_Layer_MapGuide_destroy (t) {
151
152         t.plan( 1 );
153
154         var options = {singleTile:true};
155         var map = new OpenLayers.Map('map');
156         layer = new OpenLayers.Layer.MapGuide(name, url, paramsUntiled, options);
157         map.addLayer(layer);
158
159         map.setCenter(new OpenLayers.LonLat(0,0), 5);
160
161         //grab a reference to one of the tiles
162         var tile = layer.grid[0][0];        
163
164         layer.destroy();
165         
166     // checks to make sure superclass (grid) destroy() was called    
167         
168         t.ok( layer.grid == null, "grid set to null");
169     }
170     
171
172   </script>
173 </head>
174 <body>
175 <div id="map" style="width:500px;height:550px"></div>
176 </body>
177 </html>