@@ -4,11 +4,9 @@ var parse = require('../');
44var test = require ( 'tape' ) ;
55
66test ( '-' , function ( t ) {
7- t . plan ( 8 ) ;
7+ t . plan ( 6 ) ;
88 t . deepEqual ( parse ( [ '-n' , '-' ] ) , { n : '-' , _ : [ ] } ) ;
99 t . deepEqual ( parse ( [ '--nnn' , '-' ] ) , { nnn : '-' , _ : [ ] } ) ;
10- t . deepEqual ( parse ( [ '-n' , '---' ] ) , { n : '---' , _ : [ ] } ) ;
11- t . deepEqual ( parse ( [ '--nnn' , '---' ] ) , { nnn : '---' , _ : [ ] } ) ;
1210 t . deepEqual ( parse ( [ '-' ] ) , { _ : [ '-' ] } ) ;
1311 t . deepEqual ( parse ( [ '-f-' ] ) , { f : '-' , _ : [ ] } ) ;
1412 t . deepEqual (
@@ -34,3 +32,12 @@ test('move arguments after the -- into their own `--` array', function (t) {
3432 { name : 'John' , _ : [ 'before' ] , '--' : [ 'after' ] }
3533 ) ;
3634} ) ;
35+
36+ test ( '--- option value' , function ( t ) {
37+ // A multi-dash value is largely an edge case, but check the behaviour is as expected,
38+ // and in particular the same for short option and long option (as made consistent in Jan 2023).
39+ t . plan ( 2 ) ;
40+ t . deepEqual ( parse ( [ '-n' , '---' ] ) , { n : '---' , _ : [ ] } ) ;
41+ t . deepEqual ( parse ( [ '--nnn' , '---' ] ) , { nnn : '---' , _ : [ ] } ) ;
42+ } ) ;
43+
0 commit comments