test: replace forEach with for-of in test-url-relative

PR-URL: https://github.com/nodejs/node/pull/50788
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
This commit is contained in:
vitosorriso authored and GitHub committed 2023-11-21 12:53:32 +00:00
1 parent f22ba46007
commit f425710f13
1 file changed
+17 -8
+17 -8
View File
@@ -55,13 +55,15 @@ const relativeTests = [
['http://localhost', 'file://foo/Users', 'file://foo/Users'],
['https://registry.npmjs.org', '@foo/bar', 'https://registry.npmjs.org/@foo/bar'],
];
relativeTests.forEach(function(relativeTest) {
for (let i = 0; i < relativeTests.length; i++) {
const relativeTest = relativeTests[i];
const a = url.resolve(relativeTest[0], relativeTest[1]);
const e = relativeTest[2];
assert.strictEqual(a, e,
`resolve(${relativeTest[0]}, ${relativeTest[1]})` +
` == ${e}\n actual=${a}`);
});
}
//
// Tests below taken from Chiron
@@ -374,19 +376,23 @@ const relativeTests2 = [
// No path at all
['#hash1', '#hash2', '#hash1'],
];
relativeTests2.forEach(function(relativeTest) {
for (let i = 0; i < relativeTests2.length; i++) {
const relativeTest = relativeTests2[i];
const a = url.resolve(relativeTest[1], relativeTest[0]);
const e = url.format(relativeTest[2]);
assert.strictEqual(a, e,
`resolve(${relativeTest[0]}, ${relativeTest[1]})` +
` == ${e}\n actual=${a}`);
});
}
// If format and parse are inverse operations then
// resolveObject(parse(x), y) == parse(resolve(x, y))
// format: [from, path, expected]
relativeTests.forEach(function(relativeTest) {
for (let i = 0; i < relativeTests.length; i++) {
const relativeTest = relativeTests[i];
let actual = url.resolveObject(url.parse(relativeTest[0]), relativeTest[1]);
let expected = url.parse(relativeTest[2]);
@@ -399,7 +405,8 @@ relativeTests.forEach(function(relativeTest) {
assert.strictEqual(actual, expected,
`format(${actual}) == ${expected}\n` +
`actual: ${actual}`);
});
}
// format: [to, from, result]
// the test: ['.//g', 'f:/a', 'f://g'] is a fundamental problem
@@ -415,7 +422,9 @@ if (relativeTests2[181][0] === './/g' &&
relativeTests2[181][2] === 'f://g') {
relativeTests2.splice(181, 1);
}
relativeTests2.forEach(function(relativeTest) {
for (let i = 0; i < relativeTests2.length; i++) {
const relativeTest = relativeTests2[i];
let actual = url.resolveObject(url.parse(relativeTest[1]), relativeTest[0]);
let expected = url.parse(relativeTest[2]);
@@ -431,4 +440,4 @@ relativeTests2.forEach(function(relativeTest) {
assert.strictEqual(actual, expected,
`format(${relativeTest[1]}) == ${expected}\n` +
`actual: ${actual}`);
});
}