mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Summary: Fix for bug https://github.com/facebook/react-native/issues/26006 URL with base is always used, even when absolute URL is provided ## Changelog [Javascript] [Fixed] - `URL`: Base url value is ignored when the input url is not a relative url. Pull Request resolved: https://github.com/facebook/react-native/pull/26009 Test Plan: `new URL('http://github.com', 'http://google.com')` now returns `http://github.com/` Added a test case to `URL-test.js` to verify the same. Differential Revision: D16781921 Pulled By: cpojer fbshipit-source-id: 038aca3610e34f513f603e8993f9a925b7d28626
38 lines
1.4 KiB
JavaScript
38 lines
1.4 KiB
JavaScript
/**
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*
|
|
* @format
|
|
* @emails oncall+react_native
|
|
*/
|
|
'use strict';
|
|
|
|
const URL = require('../URL').URL;
|
|
|
|
describe('URL', function() {
|
|
it('should pass Mozilla Dev Network examples', () => {
|
|
const a = new URL('/', 'https://developer.mozilla.org');
|
|
expect(a.href).toBe('https://developer.mozilla.org/');
|
|
const b = new URL('https://developer.mozilla.org');
|
|
expect(b.href).toBe('https://developer.mozilla.org/');
|
|
const c = new URL('en-US/docs', b);
|
|
expect(c.href).toBe('https://developer.mozilla.org/en-US/docs');
|
|
const d = new URL('/en-US/docs', b);
|
|
expect(d.href).toBe('https://developer.mozilla.org/en-US/docs');
|
|
const f = new URL('/en-US/docs', d);
|
|
expect(f.href).toBe('https://developer.mozilla.org/en-US/docs');
|
|
// from original test suite, but requires complex implementation
|
|
// const g = new URL(
|
|
// '/en-US/docs',
|
|
// 'https://developer.mozilla.org/fr-FR/toto',
|
|
// );
|
|
// expect(g.href).toBe('https://developer.mozilla.org/en-US/docs');
|
|
const h = new URL('/en-US/docs', a);
|
|
expect(h.href).toBe('https://developer.mozilla.org/en-US/docs');
|
|
const i = new URL('http://github.com', 'http://google.com');
|
|
expect(i.href).toBe('http://github.com/');
|
|
});
|
|
});
|