diff --git a/lib/yargs-parser.ts b/lib/yargs-parser.ts index 764ca64e..5f776705 100644 --- a/lib/yargs-parser.ts +++ b/lib/yargs-parser.ts @@ -222,7 +222,7 @@ export class YargsParser { let value: string // any unknown option (except for end-of-options, "--") - if (arg !== '--' && /^-/.test(arg) && isUnknownOptionAsArg(arg)) { + if (arg !== '--' && isUnknownOptionAsArg(arg)) { pushPositional(arg) // ---, ---=, ----, etc, } else if (truncatedArg.match(/^---+(=|$)/)) { diff --git a/test/yargs-parser.cjs b/test/yargs-parser.cjs index 492e3b90..97add48c 100644 --- a/test/yargs-parser.cjs +++ b/test/yargs-parser.cjs @@ -3008,16 +3008,6 @@ describe('yargs-parser', function () { _: ['./file.js', '--foo', '--', 'barbar'] }) }) - - it('is not influenced by unknown options when "unknown-options-as-args" is true', function () { - const parse = parser( - ['-v', '--long', 'arg', './file.js', '--foo', '--', 'barbar'], - { configuration: { 'halt-at-non-option': true, 'unknown-options-as-args': true }, boolean: ['foo'] } - ) - parse.should.deep.equal({ - _: ['-v', '--long', 'arg', './file.js', '--foo', '--', 'barbar'] - }) - }) }) describe('unknown-options-as-args = true', function () {