Files
pnpm/store/cafs/test/recursiveSymlink.test.ts
Zoltan Kochan 5d5818e44f style: enforce node: protocol for builtin imports (#10951)
Add n/prefer-node-protocol rule and autofix all bare builtin imports
to use the node: prefix. Simplify the simple-import-sort builtins
pattern to just ^node: since all imports now use the prefix.
2026-03-13 07:59:51 +01:00

22 lines
666 B
TypeScript

import fs from 'node:fs'
import path from 'node:path'
import { temporaryDirectory } from 'tempy'
import { createCafs } from '../src/index.js'
test('addFilesFromDir does not loop infinitely on recursive symlinks', () => {
const storeDir = temporaryDirectory()
const srcDir = temporaryDirectory()
fs.writeFileSync(path.join(srcDir, 'file.txt'), 'content')
// Create a symlink pointing to the current directory
fs.symlinkSync('.', path.join(srcDir, 'self'))
const cafs = createCafs(storeDir)
const { filesIndex } = cafs.addFilesFromDir(srcDir)
expect(filesIndex.has('file.txt')).toBe(true)
expect(filesIndex.has('self/file.txt')).toBe(false)
})