@@ -409,15 +409,14 @@ func testClientReplay(t *testing.T, test clientReplayTest) {
409409}
410410
411411func TestServerTransportCleanup (t * testing.T ) {
412- server := NewServer (testImpl , & ServerOptions {KeepAlive : 10 * time .Millisecond })
413-
414412 nClient := 3
415413
416414 var mu sync.Mutex
417415 var id int = - 1 // session id starting from "0", "1", "2"...
418416 chans := make (map [string ]chan struct {}, nClient )
419417
420- handler := NewStreamableHTTPHandler (func (* http.Request ) * Server { return server }, & StreamableHTTPOptions {
418+ server := NewServer (testImpl , & ServerOptions {
419+ KeepAlive : 10 * time .Millisecond ,
421420 GetSessionID : func () string {
422421 mu .Lock ()
423422 defer mu .Unlock ()
@@ -430,6 +429,7 @@ func TestServerTransportCleanup(t *testing.T) {
430429 },
431430 })
432431
432+ handler := NewStreamableHTTPHandler (func (* http.Request ) * Server { return server }, nil )
433433 handler .onTransportDeletion = func (sessionID string ) {
434434 chans [sessionID ] <- struct {}{}
435435 }
@@ -1201,8 +1201,6 @@ func TestStreamableStateless(t *testing.T) {
12011201 }
12021202 return & CallToolResult {Content : []Content {& TextContent {Text : "hi " + args .Name }}}, nil , nil
12031203 }
1204- server := NewServer (testImpl , nil )
1205- AddTool (server , & Tool {Name : "greet" , Description : "say hi" }, sayHi )
12061204
12071205 requests := []streamableRequest {
12081206 {
@@ -1265,9 +1263,15 @@ func TestStreamableStateless(t *testing.T) {
12651263 }
12661264 }
12671265
1268- sessionlessHandler := NewStreamableHTTPHandler (func (* http.Request ) * Server { return server }, & StreamableHTTPOptions {
1269- GetSessionID : func () string { return "" },
1270- Stateless : true ,
1266+ sessionlessHandler := NewStreamableHTTPHandler (func (* http.Request ) * Server {
1267+ // Return a stateless server which never assigns a session ID.
1268+ server := NewServer (testImpl , & ServerOptions {
1269+ GetSessionID : func () string { return "" },
1270+ })
1271+ AddTool (server , & Tool {Name : "greet" , Description : "say hi" }, sayHi )
1272+ return server
1273+ }, & StreamableHTTPOptions {
1274+ Stateless : true ,
12711275 })
12721276
12731277 // First, test the "sessionless" stateless mode, where there is no session ID.
@@ -1281,7 +1285,12 @@ func TestStreamableStateless(t *testing.T) {
12811285 // This can be used by tools to look up application state preserved across
12821286 // subsequent requests.
12831287 requests [0 ].wantSessionID = true // now expect a session ID for initialize
1284- statelessHandler := NewStreamableHTTPHandler (func (* http.Request ) * Server { return server }, & StreamableHTTPOptions {
1288+ statelessHandler := NewStreamableHTTPHandler (func (* http.Request ) * Server {
1289+ // Return a server with default options which should assign a random session ID.
1290+ server := NewServer (testImpl , nil )
1291+ AddTool (server , & Tool {Name : "greet" , Description : "say hi" }, sayHi )
1292+ return server
1293+ }, & StreamableHTTPOptions {
12851294 Stateless : true ,
12861295 })
12871296 t .Run ("stateless" , func (t * testing.T ) {
0 commit comments