1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-23 15:49:44 -05:00
denoland-deno/tests/node_compat/test/parallel/test-internal-fs.js
Yoshiya Hinosawa fb24fd37c9
test: add node compat test cases (#27134)
This PR enables node compat test cases found passing by using the tool
added in #27122

The percentage of passing test case increases from 16.16% to 30.43% by
this change.
2024-12-04 11:37:20 +09:00

60 lines
1.5 KiB
JavaScript

// deno-fmt-ignore-file
// deno-lint-ignore-file
// Copyright Joyent and Node contributors. All rights reserved. MIT license.
// Taken from Node 20.11.1
// This file is automatically generated by `tests/node_compat/runner/setup.ts`. Do not modify this file manually.
// Flags: --expose-internals
'use strict';
require('../common');
const assert = require('assert');
const fs = require('internal/fs/utils');
// Valid encodings and no args should not throw.
fs.assertEncoding();
fs.assertEncoding('utf8');
assert.throws(
() => fs.assertEncoding('foo'),
{ code: 'ERR_INVALID_ARG_VALUE', name: 'TypeError' }
);
// Test junction symlinks
{
const pathString = 'c:\\test1';
const linkPathString = '\\test2';
const preprocessSymlinkDestination = fs.preprocessSymlinkDestination(
pathString,
'junction',
linkPathString
);
if (process.platform === 'win32') {
assert.match(preprocessSymlinkDestination, /^\\\\\?\\/);
} else {
assert.strictEqual(preprocessSymlinkDestination, pathString);
}
}
// Test none junction symlinks
{
const pathString = 'c:\\test1';
const linkPathString = '\\test2';
const preprocessSymlinkDestination = fs.preprocessSymlinkDestination(
pathString,
undefined,
linkPathString
);
if (process.platform === 'win32') {
// There should not be any forward slashes
assert.strictEqual(
/\//.test(preprocessSymlinkDestination), false);
} else {
assert.strictEqual(preprocessSymlinkDestination, pathString);
}
}