@@ -803,5 +803,35 @@ public class NullDefaultCommandLineArguments
803
803
[ Option ( 'u' , "user" , Default = null ) ]
804
804
public string User { get ; set ; }
805
805
}
806
+
807
+ [ Fact ]
808
+ public void Parse_options_with_same_option_and_value_args ( )
809
+ {
810
+ var parser = Parser . Default ;
811
+ parser . ParseArguments < Options_With_Option_And_Value_Of_String_Type > (
812
+ new [ ] { "arg" , "-o" , "arg" } )
813
+ . WithNotParsed ( errors => { throw new InvalidOperationException ( "Must be parsed." ) ; } )
814
+ . WithParsed ( args =>
815
+ {
816
+ Assert . Equal ( "arg" , args . OptValue ) ;
817
+ Assert . Equal ( "arg" , args . PosValue ) ;
818
+ } ) ;
819
+ }
820
+
821
+ [ Fact ]
822
+ public void Parse_verb_with_same_option_and_value_args ( )
823
+ {
824
+ var parser = Parser . Default ;
825
+ var result = parser . ParseArguments (
826
+ new [ ] { "test" , "arg" , "-o" , "arg" } ,
827
+ typeof ( Verb_With_Option_And_Value_Of_String_Type ) ) ;
828
+ result
829
+ . WithNotParsed ( errors => { throw new InvalidOperationException ( "Must be parsed." ) ; } )
830
+ . WithParsed < Verb_With_Option_And_Value_Of_String_Type > ( args =>
831
+ {
832
+ Assert . Equal ( "arg" , args . OptValue ) ;
833
+ Assert . Equal ( "arg" , args . PosValue ) ;
834
+ } ) ;
835
+ }
806
836
}
807
837
}
0 commit comments