Files
openlayers/test/spec/ol/uri.test.js
2018-01-16 13:35:27 +01:00

73 lines
2.1 KiB
JavaScript

import {appendParams} from '../../../src/ol/uri.js';
describe('ol.uri.appendParams()', function() {
it('should append empty STYLES with =', function() {
const url = appendParams('http://example.com/foo', {
SERVICE: 'WMS',
STYLES: ''
});
expect(url).to.equal('http://example.com/foo?SERVICE=WMS&STYLES=');
});
it('should URL encode values but not names', function() {
const url = appendParams('http://example.com/foo', {
'k ': 'v '
});
expect(url).to.equal('http://example.com/foo?k =v%20');
});
it('should append to simple base URL', function() {
const url = appendParams('http://example.com/foo', {
k: 'v'
});
expect(url).to.equal('http://example.com/foo?k=v');
});
it('should append to base URL with ?', function() {
const url = appendParams('http://example.com/foo?', {
k: 'v'
});
expect(url).to.equal('http://example.com/foo?k=v');
});
it('should append to base URL with single existing param', function() {
const url = appendParams('http://example.com/foo?bar=bam', {
k: 'v'
});
expect(url).to.equal('http://example.com/foo?bar=bam&k=v');
});
it('should append to base URL with single existing param and extraneous &', function() {
const url = appendParams('http://example.com/foo?bar=bam&', {
k: 'v'
});
expect(url).to.equal('http://example.com/foo?bar=bam&k=v');
});
it('should append to base URL with two existing params', function() {
const url = appendParams('http://example.com/foo?bar=bam&baz=bat', {
k: 'v'
});
expect(url).to.equal('http://example.com/foo?bar=bam&baz=bat&k=v');
});
it('should append to base URL with three existing params last one empty', function() {
const url = appendParams('http://example.com/foo?bar=bam&baz=bat&bop=', {
k: 'v'
});
expect(url).to.equal('http://example.com/foo?bar=bam&baz=bat&bop=&k=v');
});
it('should not append null or undefined parameters to the url', function() {
const url = appendParams('http://example.com/foo', {
a: '1',
b: null,
c: undefined
});
expect(url).to.equal('http://example.com/foo?a=1');
});
});