]> dev.renevier.net Git - syp.git/blob - openlayers/tests/Format/WMC/v1.html
initial commit
[syp.git] / openlayers / tests / Format / WMC / v1.html
1 <html> 
2 <head> 
3     <script src="../../../lib/OpenLayers.js"></script>
4     <script type="text/javascript">
5     
6     function test_write_wmc_StyleList(t) {
7         t.plan(3);
8         
9         var layer, got, expected;
10         
11         var parser = new OpenLayers.Format.WMC.v1();
12         var name = "test";
13         var url = "http://foo";
14
15         // test named style
16         layer = new OpenLayers.Layer.WMS(name, url, {
17             styles: "mystyle"
18         });
19         got = parser.write_wmc_StyleList(layer);
20         expected = 
21             "<StyleList xmlns='http://www.opengis.net/context'>" +
22                 "<Style current='1'>" +
23                     "<Name>mystyle</Name><Title>Default</Title>" +
24                 "</Style>" +
25             "</StyleList>";
26         
27         t.xml_eq(got, expected, "named style correctly written");
28         layer.destroy();
29         
30         // test linked style
31         layer = new OpenLayers.Layer.WMS(name, url, {
32             sld: "http://linked.sld"
33         });
34         got = parser.write_wmc_StyleList(layer);
35         expected = 
36             "<StyleList xmlns='http://www.opengis.net/context'>" +
37                 "<Style current='1'>" +
38                     "<SLD>" + 
39                         "<OnlineResource xmlns:xlink='http://www.w3.org/1999/xlink' "+
40                                         "xlink:type='simple' " +
41                                         "xlink:href='http://linked.sld' />" +
42                     "</SLD>" + 
43                 "</Style>" +
44             "</StyleList>";
45             
46         t.xml_eq(got, expected, "linked style correctly written");
47         layer.destroy();
48         
49         // test inline style
50         layer = new OpenLayers.Layer.WMS(name, url, {
51             sld_body:
52                 "<sld:StyledLayerDescriptor version='1.0.0' " +
53                     "xmlns:ogc='http://www.opengis.net/ogc' " +
54                     "xmlns:sld='http://www.opengis.net/sld' " +
55                     "xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' " +
56                     "xsi:schemaLocation='http://www.opengis.net/sld http://schemas.opengeospatial.net/sld/1.0.0/StyledLayerDescriptor.xsd'>" +
57                     "<sld:NamedLayer>" +
58                         "<sld:Name>AAA212</sld:Name>" +
59                         "<sld:UserStyle>" +
60                             "<sld:FeatureTypeStyle>" +
61                                 "<sld:Rule>" +
62                                     "<sld:TextSymbolizer>" +
63                                         "<sld:Label>" +
64                                             "<ogc:PropertyName>ZONENR</ogc:PropertyName>" +
65                                         "</sld:Label>" +
66                                         "<sld:Font>" +
67                                             "<sld:CssParameter name='font-family'>Arial</sld:CssParameter>" +
68                                             "<sld:CssParameter name='font-size'>10</sld:CssParameter>" +
69                                         "</sld:Font>" +
70                                         "<sld:Fill>" +
71                                             "<sld:CssParameter name='fill'>#FF9900</sld:CssParameter>" +
72                                         "</sld:Fill>" +
73                                     "</sld:TextSymbolizer>" +
74                                 "</sld:Rule>" +
75                             "</sld:FeatureTypeStyle>" +
76                         "</sld:UserStyle>" +
77                     "</sld:NamedLayer>" +
78                 "</sld:StyledLayerDescriptor>"
79         });
80         
81         got = parser.write_wmc_StyleList(layer);
82         expected =
83             "<StyleList xmlns='http://www.opengis.net/context'>" +
84                 "<Style current='1'>" +
85                     "<SLD>" + 
86                         "<sld:StyledLayerDescriptor version='1.0.0' " +
87                             "xmlns:sld='http://www.opengis.net/sld' " +
88                             "xmlns:ogc='http://www.opengis.net/ogc' " +
89                             "xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' " +
90                             "xsi:schemaLocation='http://www.opengis.net/sld http://schemas.opengeospatial.net/sld/1.0.0/StyledLayerDescriptor.xsd'>" +
91                             "<sld:NamedLayer>" +
92                                 "<sld:Name>AAA212</sld:Name>" +
93                                 "<sld:UserStyle>" +
94                                     "<sld:FeatureTypeStyle>" +
95                                         "<sld:Rule>" +
96                                             "<sld:TextSymbolizer>" +
97                                                 "<sld:Label>" +
98                                                     "<ogc:PropertyName>ZONENR</ogc:PropertyName>" +
99                                                 "</sld:Label>" +
100                                                 "<sld:Font>" +
101                                                     "<sld:CssParameter name='font-family'>Arial</sld:CssParameter>" +
102                                                     "<sld:CssParameter name='font-size'>10</sld:CssParameter>" +
103                                                 "</sld:Font>" +
104                                                 "<sld:Fill>" +
105                                                     "<sld:CssParameter name='fill'>#FF9900</sld:CssParameter>" +
106                                                 "</sld:Fill>" +
107                                             "</sld:TextSymbolizer>" +
108                                         "</sld:Rule>" +
109                                     "</sld:FeatureTypeStyle>" +
110                                 "</sld:UserStyle>" +
111                             "</sld:NamedLayer>" +
112                         "</sld:StyledLayerDescriptor>" +
113                     "</SLD>" +
114                 "</Style>" + 
115             "</StyleList>";
116         
117         t.xml_eq(got, expected, "inline style correctly written");
118         layer.destroy();
119     }
120     
121     function test_read_wmc_StyleList(t) {
122         t.plan(3);
123         
124         var xml = new OpenLayers.Format.XML();
125         var parser = new OpenLayers.Format.WMC.v1();
126         var node, text, layerInfo;
127
128         // test named style
129         text = 
130             "<StyleList xmlns='http://www.opengis.net/context'>" +
131                 "<Style current='1'>" +
132                     "<Name>mystyle</Name><Title>Default</Title>" +
133                 "</Style>" +
134             "</StyleList>";
135         node = xml.read(text).documentElement;
136         layerInfo = {
137             params: {},
138             styles: []
139         };
140         parser.read_wmc_StyleList(layerInfo, node);
141         t.eq(layerInfo.params.styles, "mystyle", "named style correctly read");
142         
143         // test linked style
144         text = 
145             "<StyleList xmlns='http://www.opengis.net/context'>" +
146                 "<Style current='1'>" +
147                     "<SLD>" + 
148                         "<OnlineResource xmlns:xlink='http://www.w3.org/1999/xlink' "+
149                                         "xlink:type='simple' " +
150                                         "xlink:href='http://linked.sld' />" +
151                     "</SLD>" + 
152                 "</Style>" +
153             "</StyleList>";
154         node = xml.read(text).documentElement;
155         layerInfo = {
156             params: {},
157             styles: []
158         };
159         parser.read_wmc_StyleList(layerInfo, node);
160         t.eq(layerInfo.params.sld, "http://linked.sld", "linked style correctly read");        
161         
162         // test inline style
163         // any valid xml under the StyledLayerDescriptor node should make the
164         // round trip from string to node and back
165         text = 
166             "<StyleList xmlns='http://www.opengis.net/context'>" +
167                 "<Style current='1'>" +
168                     "<SLD>" + 
169                         "<sld:StyledLayerDescriptor version='1.0.0' " +
170                             "xmlns:sld='http://www.opengis.net/sld' " +
171                             "xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' " +
172                             "xsi:schemaLocation='http://www.opengis.net/sld http://schemas.opengeospatial.net/sld/1.0.0/StyledLayerDescriptor.xsd'>" +
173                             "<foo>bar<more/></foo>" + 
174                         "</sld:StyledLayerDescriptor>" + 
175                     "</SLD>" + 
176                 "</Style>" +
177             "</StyleList>";
178         node = xml.read(text).documentElement;
179         layerInfo = {
180             params: {},
181             styles: []
182         };
183         parser.read_wmc_StyleList(layerInfo, node);        
184         var expected = 
185             "<sld:StyledLayerDescriptor version='1.0.0' " +
186                 "xmlns:sld='http://www.opengis.net/sld' " +
187                 "xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' " +
188                 "xsi:schemaLocation='http://www.opengis.net/sld http://schemas.opengeospatial.net/sld/1.0.0/StyledLayerDescriptor.xsd'>" +
189                 "<foo xmlns='http://www.opengis.net/context'>bar<more/></foo>" + 
190             "</sld:StyledLayerDescriptor>";
191         t.xml_eq(layerInfo.params.sld_body, expected, "inline style correctly read");
192
193     }
194     
195
196     </script> 
197 </head> 
198 <body>
199 </body> 
200 </html>