~mortenoh/+junk/dhis2-detailed-import-export

« back to all changes in this revision

Viewing changes to gis/dhis-gis-geostat/mfbase/openlayers/tests/Format/WMC/v1.html

  • Committer: larshelge at gmail
  • Date: 2009-03-03 16:46:36 UTC
  • Revision ID: larshelge@gmail.com-20090303164636-2sjlrquo7ib1gf7r
Initial check-in

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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>