mirror of
https://github.com/pnpm/pnpm.git
synced 2026-03-27 11:31:45 -04:00
* refactor: rename workspace.sort-packages and workspace.pkgs-graph - workspace.sort-packages -> workspace.projects-sorter - workspace.pkgs-graph -> workspace.projects-graph Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * refactor: rename packages/ to core/ and pkg-manifest.read-package-json to reader - Rename packages/ directory to core/ for clarity - Rename pkg-manifest/read-package-json to pkg-manifest/reader (@pnpm/pkg-manifest.reader) - Update all tsconfig, package.json, and lockfile references Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * refactor: consolidate runtime resolvers under engine/runtime domain - Remove unused @pnpm/engine.runtime.node.fetcher package - Rename engine/runtime/node.resolver to node-resolver (dash convention) - Move resolving/bun-resolver to engine/runtime/bun-resolver - Move resolving/deno-resolver to engine/runtime/deno-resolver - Update all package names, tsconfig paths, and lockfile references Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * chore: update lockfile after removing node.fetcher Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: sort tsconfig references and package.json deps alphabetically Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: auto-fix import sorting Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: update __typings__ paths in tsconfig.lint.json for moved resolvers Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: remove deno-resolver from deps of bun-resolver --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
32 lines
1.3 KiB
TypeScript
32 lines
1.3 KiB
TypeScript
import { FetchError } from '@pnpm/error'
|
|
|
|
test('FetchError escapes auth tokens', () => {
|
|
const error = new FetchError(
|
|
{ url: 'https://foo.com', authHeaderValue: 'Bearer 00000000000000000000' },
|
|
{ status: 401, statusText: 'Unauthorized' }
|
|
)
|
|
expect(error.message).toBe('GET https://foo.com: Unauthorized - 401')
|
|
expect(error.hint).toBe('An authorization header was used: Bearer 0000[hidden]')
|
|
expect(error.request.authHeaderValue).toBe('Bearer 0000[hidden]')
|
|
})
|
|
|
|
test('FetchError escapes short auth tokens', () => {
|
|
const error = new FetchError(
|
|
{ url: 'https://foo.com', authHeaderValue: 'Bearer 0000000000' },
|
|
{ status: 401, statusText: 'Unauthorized' }
|
|
)
|
|
expect(error.message).toBe('GET https://foo.com: Unauthorized - 401')
|
|
expect(error.hint).toBe('An authorization header was used: Bearer [hidden]')
|
|
expect(error.request.authHeaderValue).toBe('Bearer [hidden]')
|
|
})
|
|
|
|
test('FetchError escapes non-standard auth header', () => {
|
|
const error = new FetchError(
|
|
{ url: 'https://foo.com', authHeaderValue: '0000000000' },
|
|
{ status: 401, statusText: 'Unauthorized' }
|
|
)
|
|
expect(error.message).toBe('GET https://foo.com: Unauthorized - 401')
|
|
expect(error.hint).toBe('An authorization header was used: [hidden]')
|
|
expect(error.request.authHeaderValue).toBe('[hidden]')
|
|
})
|