mirror of
https://github.com/tenrok/axios.git
synced 2026-06-05 16:42:32 +03:00
07a661a2a6
* fix(sec): disregard protocol-relative URL to remediate SSRF Signed-off-by: hainenber <dotronghai96@gmail.com> * feat(test/unit/regression): add regression test to ensure SNYK-JS-AXIOS-7361793 fixed in future version Signed-off-by: hainenber <dotronghai96@gmail.com> * chore: add EoF newline + comments Signed-off-by: hainenber <dotronghai96@gmail.com> * chore: fix eslint issues Signed-off-by: hainenber <dotronghai96@gmail.com> * Update SNYK-JS-AXIOS-7361793.js Co-authored-by: tom-reinders <tom-reinders@users.noreply.github.com> --------- Signed-off-by: hainenber <dotronghai96@gmail.com> Co-authored-by: tom-reinders <tom-reinders@users.noreply.github.com>
24 lines
916 B
JavaScript
24 lines
916 B
JavaScript
import isAbsoluteURL from '../../../lib/helpers/isAbsoluteURL';
|
|
|
|
describe('helpers::isAbsoluteURL', function () {
|
|
it('should return true if URL begins with valid scheme name', function () {
|
|
expect(isAbsoluteURL('https://api.github.com/users')).toBe(true);
|
|
expect(isAbsoluteURL('custom-scheme-v1.0://example.com/')).toBe(true);
|
|
expect(isAbsoluteURL('HTTP://example.com/')).toBe(true);
|
|
});
|
|
|
|
it('should return false if URL begins with invalid scheme name', function () {
|
|
expect(isAbsoluteURL('123://example.com/')).toBe(false);
|
|
expect(isAbsoluteURL('!valid://example.com/')).toBe(false);
|
|
});
|
|
|
|
it('should return false if URL is protocol-relative', function () {
|
|
expect(isAbsoluteURL('//example.com/')).toBe(false);
|
|
});
|
|
|
|
it('should return false if URL is relative', function () {
|
|
expect(isAbsoluteURL('/foo')).toBe(false);
|
|
expect(isAbsoluteURL('foo')).toBe(false);
|
|
});
|
|
});
|