toString implementation for Filter.
If Format.CQL is not included in the build, toString from Object will be used.
This commit is contained in:
@@ -56,7 +56,7 @@ OpenLayers.Filter = OpenLayers.Class({
|
||||
|
||||
/**
|
||||
* APIMethod: clone
|
||||
* Clones this filter. Should be implementted by subclasses.
|
||||
* Clones this filter. Should be implemented by subclasses.
|
||||
*
|
||||
* Returns:
|
||||
* {<OpenLayers.Filter>} Clone of this filter.
|
||||
@@ -65,5 +65,23 @@ OpenLayers.Filter = OpenLayers.Class({
|
||||
return null;
|
||||
},
|
||||
|
||||
/**
|
||||
* APIMethod: toString
|
||||
*
|
||||
* Returns:
|
||||
* {String} Include <OpenLayers.Format.CQL> in your build to get a CQL
|
||||
* representation of the filter returned. Otherwise "[Object object]"
|
||||
* will be returned.
|
||||
*/
|
||||
toString: function() {
|
||||
var string;
|
||||
if (OpenLayers.Format && OpenLayers.Format.CQL) {
|
||||
string = OpenLayers.Format.CQL.prototype.write(this);
|
||||
} else {
|
||||
string = Object.prototype.toString.call(this);
|
||||
}
|
||||
return string;
|
||||
},
|
||||
|
||||
CLASS_NAME: "OpenLayers.Filter"
|
||||
});
|
||||
|
||||
@@ -13,6 +13,16 @@
|
||||
t.eq(filter.foo, "bar", "constructor sets options correctly");
|
||||
t.eq(typeof filter.evaluate, "function", "filter has an evaluate function");
|
||||
}
|
||||
|
||||
function test_toString(t) {
|
||||
t.plan(1);
|
||||
var filter = new OpenLayers.Filter.Comparison({
|
||||
property: "PERSONS",
|
||||
value: 2000000,
|
||||
type: OpenLayers.Filter.Comparison.LESS_THAN
|
||||
});
|
||||
t.eq(filter.toString(), "PERSONS < 2000000", "toString returns CQL representation");
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
||||
Reference in New Issue
Block a user