Make writeFilter version argument optional

* Add test for optional version argument to writeFilter
* Default to WFS 1.1.0 if no version passed to writeFilter
This commit is contained in:
Matt Walker
2021-01-07 08:51:11 +00:00
parent de9d681b2f
commit 28f76ed901
2 changed files with 12 additions and 2 deletions

View File

@@ -1323,11 +1323,12 @@ function writeTimeInstant(node, time) {
* Encode filter as WFS `Filter` and return the Node.
*
* @param {import("./filter/Filter.js").default} filter Filter.
* @param {string} version Version.
* @param {string} opt_version WFS version. If not provided defaults to '1.1.0'
* @return {Node} Result.
* @api
*/
export function writeFilter(filter, version) {
export function writeFilter(filter, opt_version) {
const version = opt_version || '1.1.0';
const child = createElementNS(getFilterNS(version), 'Filter');
const context = {
node: child,

View File

@@ -1493,6 +1493,15 @@ describe('ol.format.WFS', function () {
);
expect(serialized).to.xmleql(parse(wfs1Filter));
});
it('defaults to creating a WFS 1.x.x filter if no version specified', function () {
const serialized = writeFilter(
andFilter(
likeFilter('name', 'Mississippi*'),
equalToFilter('waterway', 'riverbank')
)
);
expect(serialized).to.xmleql(parse(wfs1Filter));
});
it('creates a WFS 2.x.x filter', function () {
const serialized = writeFilter(
andFilter(