Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 795dd19

Browse files
[Console] Fix JSON description for negatable input flags
1 parent 9fb3320 commit 795dd19

File tree

3 files changed

+13
-14
lines changed

3 files changed

+13
-14
lines changed

‎Descriptor/JsonDescriptor.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ private function getInputOptionData(InputOption $option, bool $negated = false):
108108
'is_value_required' => false,
109109
'is_multiple' => false,
110110
'description' => 'Negate the "--'.$option->getName().'" option',
111-
'default' => false,
111+
'default' => null === $option->getDefault() ? null : !$option->getDefault(),
112112
] : [
113113
'name' => '--'.$option->getName(),
114114
'shortcut' => $option->getShortcut() ? '-'.str_replace('|', '|-', $option->getShortcut()) : '',

‎Tests/Descriptor/JsonDescriptorTest.php‎

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,9 @@ private function normalizeOutputRecursively($output)
3636
return array_map($this->normalizeOutputRecursively(...), $output);
3737
}
3838

39-
if (null === $output) {
40-
return null;
41-
}
42-
43-
return parent::normalizeOutput($output);
39+
return match ($output) {
40+
null, true, false => $output,
41+
default => parent::normalizeOutput($output),
42+
};
4443
}
4544
}

‎Tests/Fixtures/application_2.json‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@
8585
"is_value_required": false,
8686
"is_multiple": false,
8787
"description": "Do not ask any interactive question",
88-
"default": false
88+
"default": null
8989
},
9090
"shell": {
9191
"name": "--shell",
@@ -206,7 +206,7 @@
206206
"is_value_required": false,
207207
"is_multiple": false,
208208
"description": "Do not ask any interactive question",
209-
"default": false
209+
"default": null
210210
},
211211
"debug": {
212212
"name": "--debug",
@@ -318,7 +318,7 @@
318318
"is_value_required": false,
319319
"is_multiple": false,
320320
"description": "Do not ask any interactive question",
321-
"default": false
321+
"default": null
322322
}
323323
}
324324
}
@@ -421,7 +421,7 @@
421421
"is_value_required": false,
422422
"is_multiple": false,
423423
"description": "Do not ask any interactive question",
424-
"default": false
424+
"default": null
425425
},
426426
"short": {
427427
"name": "--short",
@@ -509,7 +509,7 @@
509509
"is_value_required": false,
510510
"is_multiple": false,
511511
"description": "Do not ask any interactive question",
512-
"default": false
512+
"default": null
513513
}
514514
}
515515
}
@@ -605,7 +605,7 @@
605605
"is_value_required": false,
606606
"is_multiple": false,
607607
"description": "Do not ask any interactive question",
608-
"default": false
608+
"default": null
609609
}
610610
}
611611
}
@@ -682,7 +682,7 @@
682682
"is_value_required": false,
683683
"is_multiple": false,
684684
"description": "Do not ask any interactive question",
685-
"default": false
685+
"default": null
686686
}
687687
}
688688
}
@@ -761,7 +761,7 @@
761761
"is_value_required": false,
762762
"is_multiple": false,
763763
"description": "Do not ask any interactive question",
764-
"default": false
764+
"default": null
765765
}
766766
}
767767
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /