Merge pull request #2046 from NizamLZ/fix/2045
Allow + char in URI path
This commit is contained in:
@@ -183,4 +183,30 @@ describe('webLinks addon', () => {
|
|||||||
assert.equal(uri, 'http://bar.io/');
|
assert.equal(uri, 'http://bar.io/');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('should allow + character in URI path', () => {
|
||||||
|
it('foo.com', () => {
|
||||||
|
const term = new MockTerminal();
|
||||||
|
webLinks.webLinksInit(<any>term);
|
||||||
|
|
||||||
|
const row = 'http://foo.com/subpath/+/id';
|
||||||
|
|
||||||
|
const match = row.match(term.regex);
|
||||||
|
const uri = match[term.options.matchIndex];
|
||||||
|
|
||||||
|
assert.equal(uri, 'http://foo.com/subpath/+/id');
|
||||||
|
});
|
||||||
|
|
||||||
|
it('bar.io', () => {
|
||||||
|
const term = new MockTerminal();
|
||||||
|
webLinks.webLinksInit(<any>term);
|
||||||
|
|
||||||
|
const row = 'http://bar.io/subpath/+/id';
|
||||||
|
|
||||||
|
const match = row.match(term.regex);
|
||||||
|
const uri = match[term.options.matchIndex];
|
||||||
|
|
||||||
|
assert.equal(uri, 'http://bar.io/subpath/+/id');
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ const ipClause = '((\\d{1,3}\\.){3}\\d{1,3})';
|
|||||||
const localHostClause = '(localhost)';
|
const localHostClause = '(localhost)';
|
||||||
const portClause = '(:\\d{1,5})';
|
const portClause = '(:\\d{1,5})';
|
||||||
const hostClause = '((' + domainBodyClause + '\\.' + tldClause + ')|' + ipClause + '|' + localHostClause + ')' + portClause + '?';
|
const hostClause = '((' + domainBodyClause + '\\.' + tldClause + ')|' + ipClause + '|' + localHostClause + ')' + portClause + '?';
|
||||||
const pathCharacterSet = '(\\/[\\/\\w\\.\\-%~:]*)*([^:"\'\\s])';
|
const pathCharacterSet = '(\\/[\\/\\w\\.\\-%~:+]*)*([^:"\'\\s])';
|
||||||
const pathClause = '(' + pathCharacterSet + ')?';
|
const pathClause = '(' + pathCharacterSet + ')?';
|
||||||
const queryStringHashFragmentCharacterSet = '[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&\'*+,:;~\\=\\.\\-]*';
|
const queryStringHashFragmentCharacterSet = '[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&\'*+,:;~\\=\\.\\-]*';
|
||||||
const queryStringClause = '(\\?' + queryStringHashFragmentCharacterSet + ')?';
|
const queryStringClause = '(\\?' + queryStringHashFragmentCharacterSet + ')?';
|
||||||
|
|||||||
Reference in New Issue
Block a user