@@ -108,25 +108,31 @@ public void ShowHelp()
108
108
var app = new CommandLineApplication ( ) ;
109
109
app . HelpOption ( ) ;
110
110
app . Option ( "--strOpt <E>" , "str option desc." , CommandOptionType . SingleValue ) ;
111
+ app . Option ( "--rStrOpt <E>" , "restricted str option desc." , CommandOptionType . SingleValue , o => o . Accepts ( ) . Values ( "Foo" , "Bar" ) ) ;
111
112
app . Option < int > ( "--intOpt <E>" , "int option desc." , CommandOptionType . SingleValue ) ;
112
113
app . Option < SomeEnum > ( "--enumOpt <E>" , "enum option desc." , CommandOptionType . SingleValue ) ;
113
114
app . Argument ( "SomeStringArgument" , "string arg desc." ) ;
115
+ app . Argument ( "RestrictedStringArgument" , "restricted string arg desc." , a=> a . Accepts ( ) . Values ( "Foo" , "Bar" ) ) ;
114
116
app . Argument < SomeEnum > ( "SomeEnumArgument" , "enum arg desc." ) ;
115
117
var helpText = GetHelpText ( app ) ;
116
118
117
- Assert . Equal ( @"Usage: [options] <SomeStringArgument> <SomeEnumArgument>
119
+ Assert . Equal ( @"Usage: [options] <SomeStringArgument> <RestrictedStringArgument> < SomeEnumArgument>
118
120
119
121
Arguments:
120
- SomeStringArgument string arg desc.
121
- SomeEnumArgument enum arg desc.
122
- Allowed values are: None, Normal, Extreme.
122
+ SomeStringArgument string arg desc.
123
+ RestrictedStringArgument restricted string arg desc.
124
+ Allowed values are: Foo, Bar.
125
+ SomeEnumArgument enum arg desc.
126
+ Allowed values are: None, Normal, Extreme.
123
127
124
128
Options:
125
- -?|-h|--help Show help information.
126
- --strOpt <E> str option desc.
127
- --intOpt <E> int option desc.
128
- --enumOpt <E> enum option desc.
129
- Allowed values are: None, Normal, Extreme.
129
+ -?|-h|--help Show help information.
130
+ --strOpt <E> str option desc.
131
+ --rStrOpt <E> restricted str option desc.
132
+ Allowed values are: Foo, Bar.
133
+ --intOpt <E> int option desc.
134
+ --enumOpt <E> enum option desc.
135
+ Allowed values are: None, Normal, Extreme.
130
136
131
137
" ,
132
138
helpText ,
@@ -141,15 +147,19 @@ public void ShowHelpFromAttributes()
141
147
app . Conventions . UseDefaultConventions ( ) ;
142
148
var helpText = GetHelpText ( app ) ;
143
149
144
- Assert . Equal ( @"Usage: test [options] <SomeStringArgument> <SomeEnumArgument>
150
+ Assert . Equal ( @"Usage: test [options] <SomeStringArgument> <RestrictedStringArgument> < SomeEnumArgument>
145
151
146
152
Arguments:
147
153
SomeStringArgument string arg desc.
154
+ RestrictedStringArgument restricted string arg desc.
155
+ Allowed values are: Foo, Bar.
148
156
SomeEnumArgument enum arg desc.
149
157
Allowed values are: None, Normal, Extreme.
150
158
151
159
Options:
152
160
-strOpt|--str-opt <STR_OPT> str option desc.
161
+ -rStrOpt|--r-str-opt <R_STR_OPT> restricted str option desc.
162
+ Allowed values are: Foo, Bar.
153
163
-intOpt|--int-opt <INT_OPT> int option desc.
154
164
-enumOpt|--verbosity <VERBOSITY> enum option desc.
155
165
Allowed values are: None, Normal, Extreme.
@@ -165,6 +175,10 @@ public class MyApp
165
175
[ Option ( ShortName = "strOpt" , Description = "str option desc." ) ]
166
176
public string strOpt { get ; set ; }
167
177
178
+ [ Option ( ShortName = "rStrOpt" , Description = "restricted str option desc." ) ]
179
+ [ AllowedValues ( "Foo" , "Bar" ) ]
180
+ public string rStrOpt { get ; set ; }
181
+
168
182
[ Option ( ShortName = "intOpt" , Description = "int option desc." ) ]
169
183
public int intOpt { get ; set ; }
170
184
@@ -174,7 +188,11 @@ public class MyApp
174
188
[ Argument ( 0 , Description = "string arg desc." ) ]
175
189
public string SomeStringArgument { get ; set ; }
176
190
177
- [ Argument ( 1 , Description = "enum arg desc." ) ]
191
+ [ Argument ( 1 , Description = "restricted string arg desc." ) ]
192
+ [ AllowedValues ( "Foo" , "Bar" ) ]
193
+ public string RestrictedStringArgument { get ; set ; }
194
+
195
+ [ Argument ( 2 , Description = "enum arg desc." ) ]
178
196
public SomeEnum SomeEnumArgument { get ; set ; }
179
197
}
180
198
0 commit comments