%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
const t = require('tap') const LOGS = [] const OUTPUT = [] const output = (...msg) => OUTPUT.push(msg) const auditError = t.mock('../../../lib/utils/audit-error.js', { 'proc-log': { warn: (...msg) => LOGS.push(msg), }, }) const npm = { command: null, flatOptions: {}, output, } t.afterEach(() => { npm.flatOptions = {} OUTPUT.length = 0 LOGS.length = 0 }) t.test('no error, not audit command', t => { npm.command = 'install' t.equal(auditError(npm, {}), false, 'no error') t.strictSame(OUTPUT, [], 'no output') t.strictSame(LOGS, [], 'no warnings') t.end() }) t.test('error, not audit command', t => { npm.command = 'install' t.equal(auditError(npm, { error: { message: 'message', body: Buffer.from('body'), method: 'POST', uri: 'https://example.com/not/a/registry', headers: { head: ['ers'], }, statusCode: '420', }, }), true, 'had error') t.strictSame(OUTPUT, [], 'no output') t.strictSame(LOGS, [], 'no warnings') t.end() }) t.test('error, audit command, not json', t => { npm.command = 'audit' npm.flatOptions.json = false t.throws(() => auditError(npm, { error: { message: 'message', body: Buffer.from('body'), method: 'POST', uri: 'https://example.com/not/a/registry', headers: { head: ['ers'], }, statusCode: '420', }, })) t.strictSame(OUTPUT, [['body']], 'some output') t.strictSame(LOGS, [['audit', 'message']], 'some warnings') t.end() }) t.test('error, audit command, json', t => { npm.command = 'audit' npm.flatOptions.json = true t.throws(() => auditError(npm, { error: { message: 'message', body: { response: 'body' }, method: 'POST', uri: 'https://example.com/not/a/registry', headers: { head: ['ers'], }, statusCode: '420', }, })) t.strictSame(OUTPUT, [ [ '{\n' + ' "message": "message",\n' + ' "method": "POST",\n' + ' "uri": "https://example.com/not/a/registry",\n' + ' "headers": {\n' + ' "head": [\n' + ' "ers"\n' + ' ]\n' + ' },\n' + ' "statusCode": "420",\n' + ' "body": {\n' + ' "response": "body"\n' + ' }\n' + '}', ], ], 'some output') t.strictSame(LOGS, [['audit', 'message']], 'some warnings') t.end() })