1/* IMPORTANT
2 * This snapshot file is auto-generated, but designed for humans.
3 * It should be checked into source control and tracked carefully.
4 * Re-generate by setting TAP_SNAPSHOT=1 and running tests.
5 * Make sure to inspect the output below.  Do not ignore changes!
6 */
7'use strict'
8exports[`test/lib/utils/error-message.js TAP 404 cleans sensitive info from package id > must match snapshot 1`] = `
9Object {
10  "detail": Array [
11    Array [
12      "404",
13      "",
14    ],
15    Array [
16      "404",
17      "",
18      "'http://evil:***@npmjs.org/not-found' is not in this registry.",
19    ],
20    Array [
21      "404",
22      "This package name is not valid, because",
23      "",
24    ],
25    Array [
26      "404",
27      " 1. name can only contain URL-friendly characters",
28    ],
29    Array [
30      "404",
31      String(
32
33        Note that you can also install from a
34      ),
35    ],
36    Array [
37      "404",
38      "tarball, folder, http url, or git url.",
39    ],
40  ],
41  "summary": Array [
42    Array [
43      "404",
44      "not found",
45    ],
46  ],
47}
48`
49
50exports[`test/lib/utils/error-message.js TAP 404 name with error > must match snapshot 1`] = `
51Object {
52  "detail": Array [
53    Array [
54      "404",
55      "",
56    ],
57    Array [
58      "404",
59      "",
60      "'node_modules' is not in this registry.",
61    ],
62    Array [
63      "404",
64      "This package name is not valid, because",
65      "",
66    ],
67    Array [
68      "404",
69      " 1. node_modules is a blacklisted name",
70    ],
71    Array [
72      "404",
73      String(
74        
75        Note that you can also install from a
76      ),
77    ],
78    Array [
79      "404",
80      "tarball, folder, http url, or git url.",
81    ],
82  ],
83  "summary": Array [
84    Array [
85      "404",
86      "not found",
87    ],
88  ],
89}
90`
91
92exports[`test/lib/utils/error-message.js TAP 404 name with warning > must match snapshot 1`] = `
93Object {
94  "detail": Array [
95    Array [
96      "404",
97      "",
98    ],
99    Array [
100      "404",
101      "",
102      "'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' is not in this registry.",
103    ],
104    Array [
105      "404",
106      "This package name is not valid, because",
107      "",
108    ],
109    Array [
110      "404",
111      " 1. name can no longer contain more than 214 characters",
112    ],
113    Array [
114      "404",
115      String(
116        
117        Note that you can also install from a
118      ),
119    ],
120    Array [
121      "404",
122      "tarball, folder, http url, or git url.",
123    ],
124  ],
125  "summary": Array [
126    Array [
127      "404",
128      "not found",
129    ],
130  ],
131}
132`
133
134exports[`test/lib/utils/error-message.js TAP 404 no package id > must match snapshot 1`] = `
135Object {
136  "detail": Array [],
137  "summary": Array [
138    Array [
139      "404",
140      "not found",
141    ],
142  ],
143}
144`
145
146exports[`test/lib/utils/error-message.js TAP 404 you should publish it > must match snapshot 1`] = `
147Object {
148  "detail": Array [
149    Array [
150      "404",
151      "",
152    ],
153    Array [
154      "404",
155      "",
156      "'yolo' is not in this registry.",
157    ],
158    Array [
159      "404",
160      String(
161        
162        Note that you can also install from a
163      ),
164    ],
165    Array [
166      "404",
167      "tarball, folder, http url, or git url.",
168    ],
169  ],
170  "summary": Array [
171    Array [
172      "404",
173      "not found",
174    ],
175  ],
176}
177`
178
179exports[`test/lib/utils/error-message.js TAP args are cleaned > must match snapshot 1`] = `
180Object {
181  "detail": Array [
182    Array [
183      "signal",
184      "SIGYOLO",
185    ],
186    Array [
187      "command",
188      "some command",
189      "a",
190      "r",
191      "g",
192      "s",
193      "https://evil:***@npmjs.org/",
194    ],
195    Array [
196      "",
197      "stdout",
198    ],
199    Array [
200      "",
201      "stderr",
202    ],
203  ],
204  "summary": Array [
205    Array [
206      "",
207      "cmd err",
208    ],
209  ],
210}
211`
212
213exports[`test/lib/utils/error-message.js TAP bad engine without config loaded > must match snapshot 1`] = `
214Object {
215  "detail": Array [
216    Array [
217      "notsup",
218      String(
219        Not compatible with your version of node/npm: some@package
220        Required: undefined
221        Actual:   {"npm":"123.456.789-npm","node":"123.456.789-node"}
222      ),
223    ],
224  ],
225  "summary": Array [
226    Array [
227      "engine",
228      "foo",
229    ],
230    Array [
231      "engine",
232      "Not compatible with your version of node/npm: some@package",
233    ],
234  ],
235}
236`
237
238exports[`test/lib/utils/error-message.js TAP bad platform array os/arch > must match snapshot 1`] = `
239Object {
240  "detail": Array [
241    Array [
242      "notsup",
243      String(
244        Valid os:   !yours,mine
245        Actual os:  posix
246        Valid cpu:  x867,x5309
247        Actual cpu: x64
248      ),
249    ],
250  ],
251  "summary": Array [
252    Array [
253      "notsup",
254      "Unsupported platform for lodash@1.0.0: wanted {/"os/":/"!yours,mine/",/"cpu/":/"x867,x5309/"} (current: {/"os/":/"posix/",/"cpu/":/"x64/"})",
255    ],
256  ],
257}
258`
259
260exports[`test/lib/utils/error-message.js TAP bad platform omits keys with no required value > must match snapshot 1`] = `
261Object {
262  "detail": Array [
263    Array [
264      "notsup",
265      String(
266        Valid os:  !yours,mine
267        Actual os: posix
268      ),
269    ],
270  ],
271  "summary": Array [
272    Array [
273      "notsup",
274      "Unsupported platform for lodash@1.0.0: wanted {/"os/":/"!yours,mine/"} (current: {/"os/":/"posix/"})",
275    ],
276  ],
277}
278`
279
280exports[`test/lib/utils/error-message.js TAP bad platform string os/arch > must match snapshot 1`] = `
281Object {
282  "detail": Array [
283    Array [
284      "notsup",
285      String(
286        Valid os:   !yours
287        Actual os:  posix
288        Valid cpu:  x420
289        Actual cpu: x64
290      ),
291    ],
292  ],
293  "summary": Array [
294    Array [
295      "notsup",
296      "Unsupported platform for lodash@1.0.0: wanted {/"os/":/"!yours/",/"cpu/":/"x420/"} (current: {/"os/":/"posix/",/"cpu/":/"x64/"})",
297    ],
298  ],
299}
300`
301
302exports[`test/lib/utils/error-message.js TAP default message > must match snapshot 1`] = `
303Object {
304  "detail": Array [],
305  "summary": Array [
306    Array [
307      "",
308      "error object",
309    ],
310  ],
311}
312`
313
314exports[`test/lib/utils/error-message.js TAP default message > must match snapshot 2`] = `
315Object {
316  "detail": Array [],
317  "summary": Array [
318    Array [
319      "",
320      "error string",
321    ],
322  ],
323}
324`
325
326exports[`test/lib/utils/error-message.js TAP default message > must match snapshot 3`] = `
327Object {
328  "detail": Array [
329    Array [
330      "signal",
331      "SIGYOLO",
332    ],
333    Array [
334      "command",
335      "some command",
336      "a",
337      "r",
338      "g",
339      "s",
340    ],
341    Array [
342      "",
343      "stdout",
344    ],
345    Array [
346      "",
347      "stderr",
348    ],
349  ],
350  "summary": Array [
351    Array [
352      "",
353      "cmd err",
354    ],
355  ],
356}
357`
358
359exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":false,"cacheDest":false} > must match snapshot 1`] = `
360Object {
361  "detail": Array [
362    Array [
363      "",
364      String(
365        
366        The operation was rejected by your operating system.
367        It is likely you do not have the permissions to access this file as the current user
368        
369        If you believe this might be a permissions issue, please double-check the
370        permissions of the file and its containing directories, or try running
371        the command again as root/Administrator.
372      ),
373    ],
374  ],
375  "summary": Array [
376    Array [
377      "",
378      Error: whoopsie {
379        "code": "EACCES",
380        "dest": "/not/cache/dir/dest",
381        "path": "/not/cache/dir/path",
382      },
383    ],
384  ],
385}
386`
387
388exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":false,"cacheDest":false} > must match snapshot 2`] = `
389Array []
390`
391
392exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":false,"cacheDest":true} > must match snapshot 1`] = `
393Object {
394  "detail": Array [
395    Array [
396      "",
397      String(
398        
399        The operation was rejected by your operating system.
400        It is likely you do not have the permissions to access this file as the current user
401        
402        If you believe this might be a permissions issue, please double-check the
403        permissions of the file and its containing directories, or try running
404        the command again as root/Administrator.
405      ),
406    ],
407  ],
408  "summary": Array [
409    Array [
410      "",
411      Error: whoopsie {
412        "code": "EACCES",
413        "dest": "{CWD}/cache/dest",
414        "path": "/not/cache/dir/path",
415      },
416    ],
417  ],
418}
419`
420
421exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":false,"cacheDest":true} > must match snapshot 2`] = `
422Array []
423`
424
425exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":true,"cacheDest":false} > must match snapshot 1`] = `
426Object {
427  "detail": Array [
428    Array [
429      "",
430      String(
431        
432        The operation was rejected by your operating system.
433        It is likely you do not have the permissions to access this file as the current user
434        
435        If you believe this might be a permissions issue, please double-check the
436        permissions of the file and its containing directories, or try running
437        the command again as root/Administrator.
438      ),
439    ],
440  ],
441  "summary": Array [
442    Array [
443      "",
444      Error: whoopsie {
445        "code": "EACCES",
446        "dest": "/not/cache/dir/dest",
447        "path": "{CWD}/cache/path",
448      },
449    ],
450  ],
451}
452`
453
454exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":true,"cacheDest":false} > must match snapshot 2`] = `
455Array []
456`
457
458exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":true,"cacheDest":true} > must match snapshot 1`] = `
459Object {
460  "detail": Array [
461    Array [
462      "",
463      String(
464        
465        The operation was rejected by your operating system.
466        It is likely you do not have the permissions to access this file as the current user
467        
468        If you believe this might be a permissions issue, please double-check the
469        permissions of the file and its containing directories, or try running
470        the command again as root/Administrator.
471      ),
472    ],
473  ],
474  "summary": Array [
475    Array [
476      "",
477      Error: whoopsie {
478        "code": "EACCES",
479        "dest": "{CWD}/cache/dest",
480        "path": "{CWD}/cache/path",
481      },
482    ],
483  ],
484}
485`
486
487exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":false,"cachePath":true,"cacheDest":true} > must match snapshot 2`] = `
488Array []
489`
490
491exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":false,"cacheDest":false} > must match snapshot 1`] = `
492Object {
493  "detail": Array [
494    Array [
495      "",
496      String(
497        
498        The operation was rejected by your operating system.
499        It is likely you do not have the permissions to access this file as the current user
500        
501        If you believe this might be a permissions issue, please double-check the
502        permissions of the file and its containing directories, or try running
503        the command again as root/Administrator.
504      ),
505    ],
506  ],
507  "summary": Array [
508    Array [
509      "",
510      Error: whoopsie {
511        "code": "EACCES",
512        "dest": "/not/cache/dir/dest",
513        "path": "/not/cache/dir/path",
514      },
515    ],
516  ],
517}
518`
519
520exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":false,"cacheDest":false} > must match snapshot 2`] = `
521Array [
522  Array [
523    "title",
524    "npm",
525  ],
526  Array [
527    "argv",
528    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
529  ],
530  Array [
531    "logfile",
532    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
533  ],
534  Array [
535    "logfile",
536    "{CWD}/cache/_logs/{DATE}-debug-0.log",
537  ],
538]
539`
540
541exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":false,"cacheDest":true} > must match snapshot 1`] = `
542Object {
543  "detail": Array [],
544  "summary": Array [
545    Array [
546      "",
547      String(
548        
549        Your cache folder contains root-owned files, due to a bug in
550        previous versions of npm which has since been addressed.
551        
552        To permanently fix this problem, please run:
553          sudo chown -R 867:5309 "{CWD}/cache"
554      ),
555    ],
556  ],
557}
558`
559
560exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":false,"cacheDest":true} > must match snapshot 2`] = `
561Array [
562  Array [
563    "title",
564    "npm",
565  ],
566  Array [
567    "argv",
568    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
569  ],
570  Array [
571    "logfile",
572    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
573  ],
574  Array [
575    "logfile",
576    "{CWD}/cache/_logs/{DATE}-debug-0.log",
577  ],
578]
579`
580
581exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":true,"cacheDest":false} > must match snapshot 1`] = `
582Object {
583  "detail": Array [],
584  "summary": Array [
585    Array [
586      "",
587      String(
588        
589        Your cache folder contains root-owned files, due to a bug in
590        previous versions of npm which has since been addressed.
591        
592        To permanently fix this problem, please run:
593          sudo chown -R 867:5309 "{CWD}/cache"
594      ),
595    ],
596  ],
597}
598`
599
600exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":true,"cacheDest":false} > must match snapshot 2`] = `
601Array [
602  Array [
603    "title",
604    "npm",
605  ],
606  Array [
607    "argv",
608    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
609  ],
610  Array [
611    "logfile",
612    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
613  ],
614  Array [
615    "logfile",
616    "{CWD}/cache/_logs/{DATE}-debug-0.log",
617  ],
618]
619`
620
621exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":true,"cacheDest":true} > must match snapshot 1`] = `
622Object {
623  "detail": Array [],
624  "summary": Array [
625    Array [
626      "",
627      String(
628        
629        Your cache folder contains root-owned files, due to a bug in
630        previous versions of npm which has since been addressed.
631        
632        To permanently fix this problem, please run:
633          sudo chown -R 867:5309 "{CWD}/cache"
634      ),
635    ],
636  ],
637}
638`
639
640exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":false,"loaded":true,"cachePath":true,"cacheDest":true} > must match snapshot 2`] = `
641Array [
642  Array [
643    "title",
644    "npm",
645  ],
646  Array [
647    "argv",
648    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
649  ],
650  Array [
651    "logfile",
652    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
653  ],
654  Array [
655    "logfile",
656    "{CWD}/cache/_logs/{DATE}-debug-0.log",
657  ],
658]
659`
660
661exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":false,"cacheDest":false} > must match snapshot 1`] = `
662Object {
663  "detail": Array [
664    Array [
665      "",
666      String(
667        
668        The operation was rejected by your operating system.
669        It's possible that the file was already in use (by a text editor or antivirus),
670        or that you lack permissions to access it.
671        
672        If you believe this might be a permissions issue, please double-check the
673        permissions of the file and its containing directories, or try running
674        the command again as root/Administrator.
675      ),
676    ],
677  ],
678  "summary": Array [
679    Array [
680      "",
681      Error: whoopsie {
682        "code": "EACCES",
683        "dest": "/not/cache/dir/dest",
684        "path": "/not/cache/dir/path",
685      },
686    ],
687  ],
688}
689`
690
691exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":false,"cacheDest":false} > must match snapshot 2`] = `
692Array []
693`
694
695exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":false,"cacheDest":true} > must match snapshot 1`] = `
696Object {
697  "detail": Array [
698    Array [
699      "",
700      String(
701        
702        The operation was rejected by your operating system.
703        It's possible that the file was already in use (by a text editor or antivirus),
704        or that you lack permissions to access it.
705        
706        If you believe this might be a permissions issue, please double-check the
707        permissions of the file and its containing directories, or try running
708        the command again as root/Administrator.
709      ),
710    ],
711  ],
712  "summary": Array [
713    Array [
714      "",
715      Error: whoopsie {
716        "code": "EACCES",
717        "dest": "{CWD}/cache/dest",
718        "path": "/not/cache/dir/path",
719      },
720    ],
721  ],
722}
723`
724
725exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":false,"cacheDest":true} > must match snapshot 2`] = `
726Array []
727`
728
729exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":true,"cacheDest":false} > must match snapshot 1`] = `
730Object {
731  "detail": Array [
732    Array [
733      "",
734      String(
735        
736        The operation was rejected by your operating system.
737        It's possible that the file was already in use (by a text editor or antivirus),
738        or that you lack permissions to access it.
739        
740        If you believe this might be a permissions issue, please double-check the
741        permissions of the file and its containing directories, or try running
742        the command again as root/Administrator.
743      ),
744    ],
745  ],
746  "summary": Array [
747    Array [
748      "",
749      Error: whoopsie {
750        "code": "EACCES",
751        "dest": "/not/cache/dir/dest",
752        "path": "{CWD}/cache/path",
753      },
754    ],
755  ],
756}
757`
758
759exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":true,"cacheDest":false} > must match snapshot 2`] = `
760Array []
761`
762
763exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":true,"cacheDest":true} > must match snapshot 1`] = `
764Object {
765  "detail": Array [
766    Array [
767      "",
768      String(
769        
770        The operation was rejected by your operating system.
771        It's possible that the file was already in use (by a text editor or antivirus),
772        or that you lack permissions to access it.
773        
774        If you believe this might be a permissions issue, please double-check the
775        permissions of the file and its containing directories, or try running
776        the command again as root/Administrator.
777      ),
778    ],
779  ],
780  "summary": Array [
781    Array [
782      "",
783      Error: whoopsie {
784        "code": "EACCES",
785        "dest": "{CWD}/cache/dest",
786        "path": "{CWD}/cache/path",
787      },
788    ],
789  ],
790}
791`
792
793exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":false,"cachePath":true,"cacheDest":true} > must match snapshot 2`] = `
794Array []
795`
796
797exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":false,"cacheDest":false} > must match snapshot 1`] = `
798Object {
799  "detail": Array [
800    Array [
801      "",
802      String(
803        
804        The operation was rejected by your operating system.
805        It's possible that the file was already in use (by a text editor or antivirus),
806        or that you lack permissions to access it.
807        
808        If you believe this might be a permissions issue, please double-check the
809        permissions of the file and its containing directories, or try running
810        the command again as root/Administrator.
811      ),
812    ],
813  ],
814  "summary": Array [
815    Array [
816      "",
817      Error: whoopsie {
818        "code": "EACCES",
819        "dest": "/not/cache/dir/dest",
820        "path": "/not/cache/dir/path",
821      },
822    ],
823  ],
824}
825`
826
827exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":false,"cacheDest":false} > must match snapshot 2`] = `
828Array [
829  Array [
830    "title",
831    "npm",
832  ],
833  Array [
834    "argv",
835    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
836  ],
837  Array [
838    "logfile",
839    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
840  ],
841  Array [
842    "logfile",
843    "{CWD}/cache/_logs/{DATE}-debug-0.log",
844  ],
845]
846`
847
848exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":false,"cacheDest":true} > must match snapshot 1`] = `
849Object {
850  "detail": Array [
851    Array [
852      "",
853      String(
854        
855        The operation was rejected by your operating system.
856        It's possible that the file was already in use (by a text editor or antivirus),
857        or that you lack permissions to access it.
858        
859        If you believe this might be a permissions issue, please double-check the
860        permissions of the file and its containing directories, or try running
861        the command again as root/Administrator.
862      ),
863    ],
864  ],
865  "summary": Array [
866    Array [
867      "",
868      Error: whoopsie {
869        "code": "EACCES",
870        "dest": "{CWD}/cache/dest",
871        "path": "/not/cache/dir/path",
872      },
873    ],
874  ],
875}
876`
877
878exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":false,"cacheDest":true} > must match snapshot 2`] = `
879Array [
880  Array [
881    "title",
882    "npm",
883  ],
884  Array [
885    "argv",
886    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
887  ],
888  Array [
889    "logfile",
890    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
891  ],
892  Array [
893    "logfile",
894    "{CWD}/cache/_logs/{DATE}-debug-0.log",
895  ],
896]
897`
898
899exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":true,"cacheDest":false} > must match snapshot 1`] = `
900Object {
901  "detail": Array [
902    Array [
903      "",
904      String(
905        
906        The operation was rejected by your operating system.
907        It's possible that the file was already in use (by a text editor or antivirus),
908        or that you lack permissions to access it.
909        
910        If you believe this might be a permissions issue, please double-check the
911        permissions of the file and its containing directories, or try running
912        the command again as root/Administrator.
913      ),
914    ],
915  ],
916  "summary": Array [
917    Array [
918      "",
919      Error: whoopsie {
920        "code": "EACCES",
921        "dest": "/not/cache/dir/dest",
922        "path": "{CWD}/cache/path",
923      },
924    ],
925  ],
926}
927`
928
929exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":true,"cacheDest":false} > must match snapshot 2`] = `
930Array [
931  Array [
932    "title",
933    "npm",
934  ],
935  Array [
936    "argv",
937    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
938  ],
939  Array [
940    "logfile",
941    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
942  ],
943  Array [
944    "logfile",
945    "{CWD}/cache/_logs/{DATE}-debug-0.log",
946  ],
947]
948`
949
950exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":true,"cacheDest":true} > must match snapshot 1`] = `
951Object {
952  "detail": Array [
953    Array [
954      "",
955      String(
956        
957        The operation was rejected by your operating system.
958        It's possible that the file was already in use (by a text editor or antivirus),
959        or that you lack permissions to access it.
960        
961        If you believe this might be a permissions issue, please double-check the
962        permissions of the file and its containing directories, or try running
963        the command again as root/Administrator.
964      ),
965    ],
966  ],
967  "summary": Array [
968    Array [
969      "",
970      Error: whoopsie {
971        "code": "EACCES",
972        "dest": "{CWD}/cache/dest",
973        "path": "{CWD}/cache/path",
974      },
975    ],
976  ],
977}
978`
979
980exports[`test/lib/utils/error-message.js TAP eacces/eperm {"windows":true,"loaded":true,"cachePath":true,"cacheDest":true} > must match snapshot 2`] = `
981Array [
982  Array [
983    "title",
984    "npm",
985  ],
986  Array [
987    "argv",
988    "/"--fetch-retries/" /"0/" /"--cache/" /"{CWD}/cache/"",
989  ],
990  Array [
991    "logfile",
992    "logs-max:10 dir:{CWD}/cache/_logs/{DATE}-",
993  ],
994  Array [
995    "logfile",
996    "{CWD}/cache/_logs/{DATE}-debug-0.log",
997  ],
998]
999`
1000
1001exports[`test/lib/utils/error-message.js TAP enoent without a file > must match snapshot 1`] = `
1002Object {
1003  "detail": Array [
1004    Array [
1005      "enoent",
1006      "This is related to npm not being able to find a file./n",
1007    ],
1008  ],
1009  "summary": Array [
1010    Array [
1011      "enoent",
1012      "foo",
1013    ],
1014  ],
1015}
1016`
1017
1018exports[`test/lib/utils/error-message.js TAP enolock without a command > must match snapshot 1`] = `
1019Object {
1020  "detail": Array [
1021    Array [
1022      "",
1023      "Try creating one first with: npm i --package-lock-only",
1024    ],
1025    Array [
1026      "",
1027      "Original error: foo",
1028    ],
1029  ],
1030  "summary": Array [
1031    Array [
1032      "",
1033      "This command requires an existing lockfile.",
1034    ],
1035  ],
1036}
1037`
1038
1039exports[`test/lib/utils/error-message.js TAP eotp/e401 401, no auth headers > must match snapshot 1`] = `
1040Object {
1041  "detail": Array [],
1042  "summary": Array [
1043    Array [
1044      "",
1045      "nope",
1046    ],
1047  ],
1048}
1049`
1050
1051exports[`test/lib/utils/error-message.js TAP eotp/e401 401, no message > must match snapshot 1`] = `
1052Object {
1053  "detail": Array [],
1054  "summary": Array [
1055    Array [
1056      "",
1057      Object {
1058        "code": "E401",
1059      },
1060    ],
1061  ],
1062}
1063`
1064
1065exports[`test/lib/utils/error-message.js TAP eotp/e401 one-time pass challenge code > must match snapshot 1`] = `
1066Object {
1067  "detail": Array [
1068    Array [
1069      "",
1070      String(
1071        You can provide a one-time password by passing --otp=<code> to the command you ran.
1072        If you already provided a one-time password then it is likely that you either typoed
1073        it, or it timed out. Please try again.
1074      ),
1075    ],
1076  ],
1077  "summary": Array [
1078    Array [
1079      "",
1080      "This operation requires a one-time password from your authenticator.",
1081    ],
1082  ],
1083}
1084`
1085
1086exports[`test/lib/utils/error-message.js TAP eotp/e401 one-time pass challenge message > must match snapshot 1`] = `
1087Object {
1088  "detail": Array [
1089    Array [
1090      "",
1091      String(
1092        You can provide a one-time password by passing --otp=<code> to the command you ran.
1093        If you already provided a one-time password then it is likely that you either typoed
1094        it, or it timed out. Please try again.
1095      ),
1096    ],
1097  ],
1098  "summary": Array [
1099    Array [
1100      "",
1101      "This operation requires a one-time password from your authenticator.",
1102    ],
1103  ],
1104}
1105`
1106
1107exports[`test/lib/utils/error-message.js TAP eotp/e401 www-authenticate challenges Basic realm=by, charset="UTF-8", challenge="your friends" > must match snapshot 1`] = `
1108Object {
1109  "detail": Array [
1110    Array [
1111      "",
1112      String(
1113        If you were trying to login, change your password, create an
1114        authentication token or enable two-factor authentication then
1115        that means you likely typed your password in incorrectly.
1116        Please try again, or recover your password at:
1117            https://www.npmjs.com/forgot
1118        
1119        If you were doing some other operation then your saved credentials are
1120        probably out of date. To correct this please try logging in again with:
1121            npm login
1122      ),
1123    ],
1124  ],
1125  "summary": Array [
1126    Array [
1127      "",
1128      "Incorrect or missing password.",
1129    ],
1130  ],
1131}
1132`
1133
1134exports[`test/lib/utils/error-message.js TAP eotp/e401 www-authenticate challenges Bearer realm=do, charset="UTF-8", challenge="yourself" > must match snapshot 1`] = `
1135Object {
1136  "detail": Array [
1137    Array [
1138      "",
1139      String(
1140        To correct this please try logging in again with:
1141            npm login
1142      ),
1143    ],
1144  ],
1145  "summary": Array [
1146    Array [
1147      "",
1148      "Unable to authenticate, your authentication token seems to be invalid.",
1149    ],
1150  ],
1151}
1152`
1153
1154exports[`test/lib/utils/error-message.js TAP eotp/e401 www-authenticate challenges PickACardAnyCard realm=friday, charset="UTF-8" > must match snapshot 1`] = `
1155Object {
1156  "detail": Array [],
1157  "summary": Array [
1158    Array [
1159      "",
1160      "challenge!",
1161    ],
1162  ],
1163}
1164`
1165
1166exports[`test/lib/utils/error-message.js TAP eotp/e401 www-authenticate challenges WashYourHands, charset="UTF-8" > must match snapshot 1`] = `
1167Object {
1168  "detail": Array [],
1169  "summary": Array [
1170    Array [
1171      "",
1172      "challenge!",
1173    ],
1174  ],
1175}
1176`
1177
1178exports[`test/lib/utils/error-message.js TAP explain ERESOLVE errors > must match snapshot 1`] = `
1179Object {
1180  "detail": Array [
1181    Array [
1182      "",
1183      "",
1184    ],
1185    Array [
1186      "",
1187      "explanation",
1188    ],
1189  ],
1190  "files": Array [
1191    Array [
1192      "eresolve-report.txt",
1193      "report",
1194    ],
1195  ],
1196  "summary": Array [
1197    Array [
1198      "ERESOLVE",
1199      "could not resolve",
1200    ],
1201  ],
1202}
1203`
1204
1205exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 1`] = `
1206Object {
1207  "detail": Array [],
1208  "summary": Array [
1209    Array [
1210      "audit",
1211      "foo",
1212    ],
1213  ],
1214}
1215`
1216
1217exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 10`] = `
1218Object {
1219  "detail": Array [
1220    Array [
1221      "network",
1222      String(
1223        This is a problem related to network connectivity.
1224        In most cases you are behind a proxy or have bad network settings.
1225        
1226        If you are behind a proxy, please make sure that the
1227        'proxy' config is set properly.  See: 'npm help config'
1228      ),
1229    ],
1230  ],
1231  "summary": Array [
1232    Array [
1233      "network",
1234      "foo",
1235    ],
1236  ],
1237}
1238`
1239
1240exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 11`] = `
1241Object {
1242  "detail": Array [
1243    Array [
1244      "network",
1245      String(
1246        This is a problem related to network connectivity.
1247        In most cases you are behind a proxy or have bad network settings.
1248        
1249        If you are behind a proxy, please make sure that the
1250        'proxy' config is set properly.  See: 'npm help config'
1251      ),
1252    ],
1253  ],
1254  "summary": Array [
1255    Array [
1256      "network",
1257      "foo",
1258    ],
1259  ],
1260}
1261`
1262
1263exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 12`] = `
1264Object {
1265  "detail": Array [
1266    Array [
1267      "network",
1268      String(
1269        This is a problem related to network connectivity.
1270        In most cases you are behind a proxy or have bad network settings.
1271        
1272        If you are behind a proxy, please make sure that the
1273        'proxy' config is set properly.  See: 'npm help config'
1274      ),
1275    ],
1276  ],
1277  "summary": Array [
1278    Array [
1279      "network",
1280      "foo",
1281    ],
1282  ],
1283}
1284`
1285
1286exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 13`] = `
1287Object {
1288  "detail": Array [
1289    Array [
1290      "notsup",
1291      String(
1292        Not compatible with your version of node/npm: some@package
1293        Required: undefined
1294        Actual:   {"npm":"123.456.789-npm","node":"123.456.789-node"}
1295      ),
1296    ],
1297  ],
1298  "summary": Array [
1299    Array [
1300      "engine",
1301      "foo",
1302    ],
1303    Array [
1304      "engine",
1305      "Not compatible with your version of node/npm: some@package",
1306    ],
1307  ],
1308}
1309`
1310
1311exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 14`] = `
1312Object {
1313  "detail": Array [
1314    Array [
1315      "nospc",
1316      String(
1317        There appears to be insufficient space on your system to finish.
1318        Clear up some disk space and try again.
1319      ),
1320    ],
1321  ],
1322  "summary": Array [
1323    Array [
1324      "nospc",
1325      "foo",
1326    ],
1327  ],
1328}
1329`
1330
1331exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 15`] = `
1332Object {
1333  "detail": Array [
1334    Array [
1335      "rofs",
1336      String(
1337        Often virtualized file systems, or other file systems
1338        that don't support symlinks, give this error.
1339      ),
1340    ],
1341  ],
1342  "summary": Array [
1343    Array [
1344      "rofs",
1345      "foo",
1346    ],
1347  ],
1348}
1349`
1350
1351exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 16`] = `
1352Object {
1353  "detail": Array [
1354    Array [
1355      "enoent",
1356      String(
1357        This is related to npm not being able to find a file.
1358        
1359        Check if the file '/some/file' is present.
1360      ),
1361    ],
1362  ],
1363  "summary": Array [
1364    Array [
1365      "enoent",
1366      "foo",
1367    ],
1368  ],
1369}
1370`
1371
1372exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 17`] = `
1373Object {
1374  "detail": Array [
1375    Array [
1376      "typeerror",
1377      String(
1378        This is an error with npm itself. Please report this error at:
1379            https://github.com/npm/cli/issues
1380      ),
1381    ],
1382  ],
1383  "summary": Array [
1384    Array [
1385      "typeerror",
1386      "dummy stack trace",
1387    ],
1388  ],
1389}
1390`
1391
1392exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 18`] = `
1393Object {
1394  "detail": Array [
1395    Array [
1396      "typeerror",
1397      String(
1398        This is an error with npm itself. Please report this error at:
1399            https://github.com/npm/cli/issues
1400      ),
1401    ],
1402  ],
1403  "summary": Array [
1404    Array [
1405      "typeerror",
1406      "dummy stack trace",
1407    ],
1408  ],
1409}
1410`
1411
1412exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 19`] = `
1413Object {
1414  "detail": Array [
1415    Array [
1416      "typeerror",
1417      String(
1418        This is an error with npm itself. Please report this error at:
1419            https://github.com/npm/cli/issues
1420      ),
1421    ],
1422  ],
1423  "summary": Array [
1424    Array [
1425      "typeerror",
1426      "dummy stack trace",
1427    ],
1428  ],
1429}
1430`
1431
1432exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 2`] = `
1433Object {
1434  "detail": Array [
1435    Array [
1436      "audit",
1437      "Try creating one first with: npm i --package-lock-only",
1438    ],
1439    Array [
1440      "audit",
1441      "Original error: foo",
1442    ],
1443  ],
1444  "summary": Array [
1445    Array [
1446      "audit",
1447      "This command requires an existing lockfile.",
1448    ],
1449  ],
1450}
1451`
1452
1453exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 20`] = `
1454Object {
1455  "detail": Array [
1456    Array [
1457      "typeerror",
1458      String(
1459        This is an error with npm itself. Please report this error at:
1460            https://github.com/npm/cli/issues
1461      ),
1462    ],
1463  ],
1464  "summary": Array [
1465    Array [
1466      "typeerror",
1467      "dummy stack trace",
1468    ],
1469  ],
1470}
1471`
1472
1473exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 21`] = `
1474Object {
1475  "detail": Array [
1476    Array [
1477      "notarget",
1478      String(
1479        In most cases you or one of your dependencies are requesting
1480        a package version that doesn't exist.
1481      ),
1482    ],
1483  ],
1484  "summary": Array [
1485    Array [
1486      "notarget",
1487      "foo",
1488    ],
1489  ],
1490}
1491`
1492
1493exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 22`] = `
1494Object {
1495  "detail": Array [
1496    Array [
1497      "403",
1498      String(
1499        In most cases, you or one of your dependencies are requesting
1500        a package version that is forbidden by your security policy, or
1501        on a server you do not have access to.
1502      ),
1503    ],
1504  ],
1505  "summary": Array [
1506    Array [
1507      "403",
1508      "foo",
1509    ],
1510  ],
1511}
1512`
1513
1514exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 23`] = `
1515Object {
1516  "detail": Array [
1517    Array [
1518      "network",
1519      String(
1520        This is a problem related to network connectivity.
1521        In most cases you are behind a proxy or have bad network settings.
1522
1523        If you are behind a proxy, please make sure that the
1524        'proxy' config is set properly.  See: 'npm help config'
1525      ),
1526    ],
1527  ],
1528  "summary": Array [
1529    Array [
1530      "network",
1531      "foo",
1532    ],
1533  ],
1534}
1535`
1536
1537exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 3`] = `
1538Object {
1539  "detail": Array [
1540    Array [
1541      "",
1542      String(
1543        
1544        If you are behind a proxy, please make sure that the
1545        'proxy' config is set properly.  See: 'npm help config'
1546      ),
1547    ],
1548  ],
1549  "summary": Array [
1550    Array [
1551      "",
1552      Error: foo {
1553        "code": "ECONNREFUSED",
1554        "file": "/some/file",
1555        "path": "/some/path",
1556        "pkgid": "some@package",
1557      },
1558    ],
1559  ],
1560}
1561`
1562
1563exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 4`] = `
1564Object {
1565  "detail": Array [
1566    Array [
1567      "",
1568      String(
1569        
1570        Failed using git.
1571        Please check if you have git installed and in your PATH.
1572      ),
1573    ],
1574  ],
1575  "summary": Array [
1576    Array [
1577      "",
1578      "foo",
1579    ],
1580  ],
1581}
1582`
1583
1584exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 5`] = `
1585Object {
1586  "detail": Array [
1587    Array [
1588      "publish fail",
1589      "Update the 'version' field in package.json and try again.",
1590    ],
1591    Array [
1592      "publish fail",
1593      "",
1594    ],
1595    Array [
1596      "publish fail",
1597      "To automatically increment version numbers, see:",
1598    ],
1599    Array [
1600      "publish fail",
1601      "    npm help version",
1602    ],
1603  ],
1604  "summary": Array [
1605    Array [
1606      "publish fail",
1607      "Cannot publish over existing version.",
1608    ],
1609  ],
1610}
1611`
1612
1613exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 6`] = `
1614Object {
1615  "detail": Array [
1616    Array [
1617      "git",
1618      String(
1619        Refusing to remove it. Update manually,
1620        or move it out of the way first.
1621      ),
1622    ],
1623  ],
1624  "summary": Array [
1625    Array [
1626      "git",
1627      "foo",
1628    ],
1629    Array [
1630      "git",
1631      "    /some/path",
1632    ],
1633  ],
1634}
1635`
1636
1637exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 7`] = `
1638Object {
1639  "detail": Array [
1640    Array [
1641      "",
1642      "Remove the existing file and try again, or run npm",
1643    ],
1644    Array [
1645      "",
1646      "with --force to overwrite files recklessly.",
1647    ],
1648  ],
1649  "summary": Array [
1650    Array [
1651      "",
1652      "foo",
1653    ],
1654    Array [
1655      "",
1656      "File exists: /some/path",
1657    ],
1658  ],
1659}
1660`
1661
1662exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 8`] = `
1663Object {
1664  "detail": Array [
1665    Array [
1666      "need auth",
1667      "You need to authorize this machine using \`npm adduser\`",
1668    ],
1669  ],
1670  "summary": Array [
1671    Array [
1672      "need auth",
1673      "foo",
1674    ],
1675  ],
1676}
1677`
1678
1679exports[`test/lib/utils/error-message.js TAP just simple messages > must match snapshot 9`] = `
1680Object {
1681  "detail": Array [
1682    Array [
1683      "network",
1684      String(
1685        This is a problem related to network connectivity.
1686        In most cases you are behind a proxy or have bad network settings.
1687        
1688        If you are behind a proxy, please make sure that the
1689        'proxy' config is set properly.  See: 'npm help config'
1690      ),
1691    ],
1692  ],
1693  "summary": Array [
1694    Array [
1695      "network",
1696      "foo",
1697    ],
1698  ],
1699}
1700`
1701
1702exports[`test/lib/utils/error-message.js TAP replace message/stack sensistive info > must match snapshot 1`] = `
1703Object {
1704  "detail": Array [],
1705  "summary": Array [
1706    Array [
1707      "audit",
1708      "Error at registry: https://user:***@registry.npmjs.org/",
1709    ],
1710  ],
1711}
1712`
1713
1714exports[`v TAP json parse json somewhere else > must match snapshot 1`] = `
1715Object {
1716  "detail": Array [
1717    Array [
1718      "JSON.parse",
1719      String(
1720        Failed to parse JSON data.
1721        Note: package.json must be actual JSON, not just JavaScript.
1722      ),
1723    ],
1724  ],
1725  "summary": Array [
1726    Array [
1727      "JSON.parse",
1728      "not json",
1729    ],
1730  ],
1731}
1732`
1733
1734exports[`v TAP json parse just regular bad json in package.json > must match snapshot 1`] = `
1735Object {
1736  "detail": Array [
1737    Array [
1738      "JSON.parse",
1739      String(
1740        Failed to parse JSON data.
1741        Note: package.json must be actual JSON, not just JavaScript.
1742      ),
1743    ],
1744  ],
1745  "summary": Array [
1746    Array [
1747      "JSON.parse",
1748      "not json",
1749    ],
1750  ],
1751}
1752`
1753
1754exports[`v TAP json parse merge conflict in package.json > must match snapshot 1`] = `
1755Object {
1756  "detail": Array [
1757    Array [
1758      "",
1759      String(
1760        Merge conflict detected in your package.json.
1761        
1762        Please resolve the package.json conflict and retry.
1763      ),
1764    ],
1765  ],
1766  "summary": Array [],
1767}
1768`
1769