node/test/parallel/test-whatwg-url-custom-no-enumerable-context.js
Joyee Cheung 0063448b04
url: make the context non-enumerable
At the moment we expose the context as a normal property on the
prototype chain of URL or take them from the base URL
which makes them enumerable and considered
by assert libraries even though the context carries path-dependent
information that do not affect the equivalence of these objects.
This patch fixes it in a minimal manner by marking the context
non-enumerable as making it full private would require more
refactoring and can be done in a bigger patch later.

PR-URL: https://github.com/nodejs/node/pull/24218
Refs: https://github.com/nodejs/node/issues/24211
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
2018-11-14 00:55:36 +01:00

14 lines
374 B
JavaScript

'use strict';
// This tests that the context of URL objects are not
// enumerable and thus considered by assert libraries.
// See https://github.com/nodejs/node/issues/24211
// Tests below are not from WPT.
require('../common');
const assert = require('assert');
assert.deepStrictEqual(
new URL('./foo', 'https://example.com/'),
new URL('https://example.com/foo')
);