@@ -1991,6 +1991,36 @@ func TestSessionIdManagerResolver_Integration(t *testing.T) {
19911991 t .Error ("Expected fallback manager to generate non-empty session ID" )
19921992 }
19931993 })
1994+
1995+ t .Run ("Nil manager falls back safely" , func (t * testing.T ) {
1996+ mcpServer := NewMCPServer ("test-server" , "1.0.0" )
1997+ // requires nil-guard in WithSessionIdManager
1998+ srv := NewTestStreamableHTTPServer (mcpServer , WithSessionIdManager (nil ))
1999+ defer srv .Close ()
2000+ resp , err := postJSON (srv .URL , initRequest )
2001+ if err != nil {
2002+ t .Fatalf ("init failed: %v" , err )
2003+ }
2004+ if resp .StatusCode != http .StatusOK {
2005+ t .Fatalf ("expected 200, got %d" , resp .StatusCode )
2006+ }
2007+ _ = resp .Body .Close ()
2008+ })
2009+
2010+ t .Run ("Nil resolver falls back safely" , func (t * testing.T ) {
2011+ mcpServer := NewMCPServer ("test-server" , "1.0.0" )
2012+ // requires nil-guard in WithSessionIdManagerResolver
2013+ srv := NewTestStreamableHTTPServer (mcpServer , WithSessionIdManagerResolver (nil ))
2014+ defer srv .Close ()
2015+ resp , err := postJSON (srv .URL , initRequest )
2016+ if err != nil {
2017+ t .Fatalf ("init failed: %v" , err )
2018+ }
2019+ if resp .StatusCode != http .StatusOK {
2020+ t .Fatalf ("expected 200, got %d" , resp .StatusCode )
2021+ }
2022+ _ = resp .Body .Close ()
2023+ })
19942024}
19952025
19962026func TestStreamableHTTP_SendNotificationToSpecificClient (t * testing.T ) {
0 commit comments