1111
1212using Xunit ;
1313
14- namespace MatthiWare . CommandLineParser . Tests
14+ namespace MatthiWare . CommandLine . Tests
1515{
1616 public class CommandLineParserTests
1717 {
@@ -21,13 +21,31 @@ public override void OnConfigure(ICommandConfigurationBuilder builder)
2121 {
2222 builder . Name ( "my" ) ;
2323 }
24+
25+ public override void OnConfigure ( ICommandConfigurationBuilder < object > builder )
26+ {
27+ builder . Name ( "my" ) ;
28+ }
29+ }
30+
31+ [ Fact ]
32+ public void CommandLineParserUsesCorrectOptions ( )
33+ {
34+ var opt = new CommandLineParserOptions ( ) ;
35+
36+ var parser = new CommandLineParser ( opt ) ;
37+
38+ Assert . Equal ( opt , parser . ParserOptions ) ;
2439 }
2540
2641 [ Fact ]
2742 public void CommandLineParserUsesContainerCorrectly ( )
2843 {
2944 var commandMock = new Mock < MyCommand > ( ) ;
30- //commandMock.Setup(c => c.OnConfigure(It.IsAny<ICommandConfigurationBuilder>())).Verifiable("OnConfigure not called");
45+ commandMock . Setup (
46+ c => c . OnConfigure ( It . IsAny < ICommandConfigurationBuilder < object > > ( ) ) )
47+ . CallBase ( ) . Verifiable ( "OnConfigure not called" ) ;
48+
3149 commandMock . Setup ( c => c . OnExecute ( It . IsAny < object > ( ) , It . IsAny < object > ( ) ) ) . Verifiable ( "OnExecute not called" ) ;
3250
3351 var containerMock = new Mock < IContainerResolver > ( ) ;
@@ -45,6 +63,52 @@ public void CommandLineParserUsesContainerCorrectly()
4563 containerMock . VerifyAll ( ) ;
4664 }
4765
66+ [ Fact ]
67+ public void CommandLinerParserPassesContainerCorreclty ( )
68+ {
69+ var containerResolver = new Mock < IContainerResolver > ( ) ;
70+ var options = new CommandLineParserOptions ( ) ;
71+ var parser = new CommandLineParser ( containerResolver . Object ) ;
72+
73+ Assert . Equal ( containerResolver . Object , parser . ContainerResolver ) ;
74+
75+ parser = new CommandLineParser ( options , containerResolver . Object ) ;
76+
77+ Assert . Equal ( containerResolver . Object , parser . ContainerResolver ) ;
78+ Assert . Equal ( options , parser . ParserOptions ) ;
79+ }
80+
81+ [ Fact ]
82+ public void CommandLinerParserPassesResolverCorreclty ( )
83+ {
84+ var resolverMock = new Mock < IArgumentResolverFactory > ( ) ;
85+ var options = new CommandLineParserOptions ( ) ;
86+ var parser = new CommandLineParser ( resolverMock . Object ) ;
87+
88+ Assert . Equal ( resolverMock . Object , parser . ArgumentResolverFactory ) ;
89+
90+ parser = new CommandLineParser ( options , resolverMock . Object ) ;
91+
92+ Assert . Equal ( resolverMock . Object , parser . ArgumentResolverFactory ) ;
93+ Assert . Equal ( options , parser . ParserOptions ) ;
94+ }
95+
96+ [ Fact ]
97+ public void CommandLinerParserPassesResolverAndContainerCorreclty ( )
98+ {
99+ var resolverMock = new Mock < IArgumentResolverFactory > ( ) ;
100+
101+ var containerMock = new Mock < IContainerResolver > ( ) ;
102+
103+ var options = new CommandLineParserOptions ( ) ;
104+
105+ var parser = new CommandLineParser ( options , resolverMock . Object , containerMock . Object ) ;
106+
107+ Assert . Equal ( resolverMock . Object , parser . ArgumentResolverFactory ) ;
108+ Assert . Equal ( containerMock . Object , parser . ContainerResolver ) ;
109+ Assert . Equal ( options , parser . ParserOptions ) ;
110+ }
111+
48112 [ Fact ]
49113 public void CommandLineParserUsesArgumentFactoryCorrectly ( )
50114 {
0 commit comments