add Protocol for Sensor Observation Service r=ahocevar (closes #2373)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@9912 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
<html>
|
||||
<head>
|
||||
<script src="../../lib/OpenLayers.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
function test_constructor(t) {
|
||||
t.plan(4);
|
||||
var a = new OpenLayers.Protocol.SOS({
|
||||
url: "foo",
|
||||
fois: ["a", "b", "c"]
|
||||
});
|
||||
|
||||
t.eq(a.url, "foo", "constructor sets url");
|
||||
t.eq(a.options.url, a.url, "constructor copies url to options.url");
|
||||
t.eq(a.fois[0], "a", "constructor sets the fois correctly");
|
||||
t.eq((a.format instanceof OpenLayers.Format.SOSGetFeatureOfInterest), true, "Constructor sets format correctly");
|
||||
}
|
||||
|
||||
function test_read(t) {
|
||||
t.plan(4);
|
||||
|
||||
var protocol = new OpenLayers.Protocol.SOS({
|
||||
url: "http://some.url.org/sos?",
|
||||
fois: ["foi1", "foi2"],
|
||||
parseFeatures: function(request) {
|
||||
t.eq(request.responseText, "foo", "parseFeatures called properly");
|
||||
return "foo";
|
||||
}
|
||||
});
|
||||
|
||||
var _POST = OpenLayers.Request.POST;
|
||||
|
||||
var expected, status;
|
||||
OpenLayers.Request.POST = function(obj) {
|
||||
t.xml_eq(new OpenLayers.Format.XML().read(obj.data).documentElement, expected, "GetFeatureOfInterest request is correct");
|
||||
obj.status = status;
|
||||
obj.responseText = "foo";
|
||||
obj.options = {};
|
||||
t.delay_call(0.1, function() {obj.callback.call(this)});
|
||||
return obj;
|
||||
};
|
||||
|
||||
var xml = '<GetFeatureOfInterest xmlns="http://www.opengis.net/sos/1.0" version="1.0.0" service="SOS" xsi:schemaLocation="http://www.opengis.net/sos/1.0 http://schemas.opengis.net/sos/1.0.0/sosAll.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><FeatureOfInterestId>foi1</FeatureOfInterestId><FeatureOfInterestId>foi2</FeatureOfInterestId></GetFeatureOfInterest>';
|
||||
expected = new OpenLayers.Format.XML().read(xml).documentElement;
|
||||
status = 200;
|
||||
var response = protocol.read({callback: function(response) {
|
||||
t.eq(response.features, "foo", "user callback properly called with features");
|
||||
t.eq(response.code, OpenLayers.Protocol.Response.SUCCESS, "success reported properly");
|
||||
}});
|
||||
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user