38 lines
1.2 KiB
JavaScript
38 lines
1.2 KiB
JavaScript
// @flow strict-local
|
|
|
|
import assert from 'assert';
|
|
import urlJoin from '../src/urlJoin';
|
|
|
|
describe('urlJoin', () => {
|
|
it('Should join two paths', () => {
|
|
let joinedUrl = urlJoin('/', './image.jpeg?test=test');
|
|
assert.equal(joinedUrl, '/image.jpeg?test=test');
|
|
});
|
|
|
|
it('Should join two paths with longer publicUrl', () => {
|
|
let joinedUrl = urlJoin('/static', './image.jpeg?test=test');
|
|
assert.equal(joinedUrl, '/static/image.jpeg?test=test');
|
|
});
|
|
|
|
it('Should join two paths with longer publicUrl', () => {
|
|
let joinedUrl = urlJoin('/static', 'image.jpeg?test=test');
|
|
assert.equal(joinedUrl, '/static/image.jpeg?test=test');
|
|
});
|
|
|
|
it('Should turn windows path into posix', () => {
|
|
let joinedUrl = urlJoin('/static', '.\\image.jpeg?test=test');
|
|
assert.equal(joinedUrl, '/static/image.jpeg?test=test');
|
|
});
|
|
|
|
it('should support paths with colons', () => {
|
|
let joinedUrl = urlJoin('/static', 'a:b:c.html');
|
|
assert.equal(joinedUrl, '/static/a:b:c.html');
|
|
|
|
joinedUrl = urlJoin('/static', '/a:b:c.html');
|
|
assert.equal(joinedUrl, '/static/a:b:c.html');
|
|
|
|
joinedUrl = urlJoin('/static', './a:b:c.html');
|
|
assert.equal(joinedUrl, '/static/a:b:c.html');
|
|
});
|
|
});
|