1111
1212namespace  ModelContextProtocol . Tests . Server ; 
1313
14- public  class  McpServerTests 
14+ public  class  McpServerTests   :   LoggedTest 
1515{ 
1616    private  readonly  Mock < IServerTransport >  _serverTransport ; 
17-     private  readonly  Mock < ILoggerFactory >  _loggerFactory ; 
1817    private  readonly  Mock < ILogger >  _logger ; 
1918    private  readonly  McpServerOptions  _options ; 
2019    private  readonly  IServiceProvider  _serviceProvider ; 
2120
22-     public  McpServerTests ( ) 
21+     public  McpServerTests ( ITestOutputHelper  testOutputHelper ) 
22+         :  base ( testOutputHelper ) 
2323    { 
2424        _serverTransport  =  new  Mock < IServerTransport > ( ) ; 
25-         _loggerFactory  =  new  Mock < ILoggerFactory > ( ) ; 
2625        _logger  =  new  Mock < ILogger > ( ) ; 
27-         _loggerFactory . Setup ( f =>  f . CreateLogger ( It . IsAny < string > ( ) ) ) . Returns ( _logger . Object ) ; 
2826        _options  =  CreateOptions ( ) ; 
2927        _serviceProvider  =  new  Mock < IServiceProvider > ( ) . Object ; 
3028    } 
@@ -44,7 +42,7 @@ private static McpServerOptions CreateOptions(ServerCapabilities? capabilities =
4442    public  async  Task  Constructor_Should_Initialize_With_Valid_Parameters ( ) 
4543    { 
4644        // Arrange & Act 
47-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
45+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
4846
4947        // Assert 
5048        Assert . NotNull ( server ) ; 
@@ -54,14 +52,14 @@ public async Task Constructor_Should_Initialize_With_Valid_Parameters()
5452    public  void  Constructor_Throws_For_Null_Transport ( ) 
5553    { 
5654        // Arrange, Act & Assert 
57-         Assert . Throws < ArgumentNullException > ( ( )  =>  McpServerFactory . Create ( null ! ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ) ; 
55+         Assert . Throws < ArgumentNullException > ( ( )  =>  McpServerFactory . Create ( null ! ,  _options ,  LoggerFactory ,  _serviceProvider ) ) ; 
5856    } 
5957
6058    [ Fact ] 
6159    public  void  Constructor_Throws_For_Null_Options ( ) 
6260    { 
6361        // Arrange, Act & Assert 
64-         Assert . Throws < ArgumentNullException > ( ( )  =>  McpServerFactory . Create ( _serverTransport . Object ,  null ! ,  _loggerFactory . Object ,  _serviceProvider ) ) ; 
62+         Assert . Throws < ArgumentNullException > ( ( )  =>  McpServerFactory . Create ( _serverTransport . Object ,  null ! ,  LoggerFactory ,  _serviceProvider ) ) ; 
6563    } 
6664
6765    [ Fact ] 
@@ -78,7 +76,7 @@ public async Task Constructor_Does_Not_Throw_For_Null_Logger()
7876    public  async  Task  Constructor_Does_Not_Throw_For_Null_ServiceProvider ( ) 
7977    { 
8078        // Arrange & Act 
81-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  null ) ; 
79+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  null ) ; 
8280
8381        // Assert 
8482        Assert . NotNull ( server ) ; 
@@ -88,7 +86,7 @@ public async Task Constructor_Does_Not_Throw_For_Null_ServiceProvider()
8886    public  async  Task  StartAsync_Should_Throw_InvalidOperationException_If_Already_Initializing ( ) 
8987    { 
9088        // Arrange 
91-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
89+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
9290        var  task  =  server . StartAsync ( TestContext . Current . CancellationToken ) ; 
9391
9492        // Act & Assert 
@@ -101,7 +99,7 @@ public async Task StartAsync_Should_Throw_InvalidOperationException_If_Already_I
10199    public  async  Task  StartAsync_Should_Do_Nothing_If_Already_Initialized ( ) 
102100    { 
103101        // Arrange 
104-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
102+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
105103        SetInitialized ( server ,  true ) ; 
106104
107105        await  server . StartAsync ( TestContext . Current . CancellationToken ) ; 
@@ -114,7 +112,7 @@ public async Task StartAsync_Should_Do_Nothing_If_Already_Initialized()
114112    public  async  Task  StartAsync_ShouldStartListening ( ) 
115113    { 
116114        // Arrange 
117-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
115+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
118116
119117        // Act 
120118        await  server . StartAsync ( TestContext . Current . CancellationToken ) ; 
@@ -127,7 +125,7 @@ public async Task StartAsync_ShouldStartListening()
127125    public  async  Task  StartAsync_Sets_Initialized_After_Transport_Responses_Initialized_Notification ( ) 
128126    { 
129127        await  using  var  transport  =  new  TestServerTransport ( ) ; 
130-         await  using  var  server  =  McpServerFactory . Create ( transport ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
128+         await  using  var  server  =  McpServerFactory . Create ( transport ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
131129
132130        await  server . StartAsync ( TestContext . Current . CancellationToken ) ; 
133131
@@ -147,7 +145,7 @@ await transport.SendMessageAsync(new JsonRpcNotification
147145    public  async  Task  RequestSamplingAsync_Should_Throw_McpServerException_If_Client_Does_Not_Support_Sampling ( ) 
148146    { 
149147        // Arrange 
150-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
148+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
151149        SetClientCapabilities ( server ,  new  ClientCapabilities ( ) ) ; 
152150
153151        var  action  =  ( )  =>  server . RequestSamplingAsync ( new  CreateMessageRequestParams  {  Messages  =  [ ]  } ,  CancellationToken . None ) ; 
@@ -161,7 +159,7 @@ public async Task RequestSamplingAsync_Should_SendRequest()
161159    { 
162160        // Arrange 
163161        await  using  var  transport  =  new  TestServerTransport ( ) ; 
164-         await  using  var  server  =  McpServerFactory . Create ( transport ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
162+         await  using  var  server  =  McpServerFactory . Create ( transport ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
165163        SetClientCapabilities ( server ,  new  ClientCapabilities  {  Sampling  =  new  SamplingCapability ( )  } ) ; 
166164
167165        await  server . StartAsync ( TestContext . Current . CancellationToken ) ; 
@@ -179,7 +177,7 @@ public async Task RequestSamplingAsync_Should_SendRequest()
179177    public  async  Task  RequestRootsAsync_Should_Throw_McpServerException_If_Client_Does_Not_Support_Roots ( ) 
180178    { 
181179        // Arrange 
182-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
180+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
183181        SetClientCapabilities ( server ,  new  ClientCapabilities ( ) ) ; 
184182
185183        // Act & Assert 
@@ -191,7 +189,7 @@ public async Task RequestRootsAsync_Should_SendRequest()
191189    { 
192190        // Arrange 
193191        await  using  var  transport  =  new  TestServerTransport ( ) ; 
194-         await  using  var  server  =  McpServerFactory . Create ( transport ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
192+         await  using  var  server  =  McpServerFactory . Create ( transport ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
195193        SetClientCapabilities ( server ,  new  ClientCapabilities  {  Roots  =  new  RootsCapability ( )  } ) ; 
196194        await  server . StartAsync ( TestContext . Current . CancellationToken ) ; 
197195
@@ -208,7 +206,7 @@ public async Task RequestRootsAsync_Should_SendRequest()
208206    [ Fact ] 
209207    public  async  Task  Throws_Exception_If_Not_Connected ( ) 
210208    { 
211-         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
209+         await  using  var  server  =  McpServerFactory . Create ( _serverTransport . Object ,  _options ,  LoggerFactory ,  _serviceProvider ) ; 
212210        SetClientCapabilities ( server ,  new  ClientCapabilities  {  Roots  =  new  RootsCapability ( )  } ) ; 
213211        _serverTransport . SetupGet ( t =>  t . IsConnected ) . Returns ( false ) ; 
214212
@@ -555,7 +553,7 @@ private async Task Can_Handle_Requests(ServerCapabilities? serverCapabilities, s
555553        var  options  =  CreateOptions ( serverCapabilities ) ; 
556554        configureOptions ? . Invoke ( options ) ; 
557555
558-         await  using  var  server  =  McpServerFactory . Create ( transport ,  options ,  _loggerFactory . Object ,  _serviceProvider ) ; 
556+         await  using  var  server  =  McpServerFactory . Create ( transport ,  options ,  LoggerFactory ,  _serviceProvider ) ; 
559557
560558        await  server . StartAsync ( ) ; 
561559
@@ -587,7 +585,7 @@ private async Task Throws_Exception_If_No_Handler_Assigned(ServerCapabilities se
587585        await  using  var  transport  =  new  TestServerTransport ( ) ; 
588586        var  options  =  CreateOptions ( serverCapabilities ) ; 
589587
590-         Assert . Throws < McpServerException > ( ( )  =>  McpServerFactory . Create ( transport ,  options ,  _loggerFactory . Object ,  _serviceProvider ) ) ; 
588+         Assert . Throws < McpServerException > ( ( )  =>  McpServerFactory . Create ( transport ,  options ,  LoggerFactory ,  _serviceProvider ) ) ; 
591589    } 
592590
593591    [ Fact ] 
0 commit comments