// 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); } }