okami.mom/albedo
git clone https://git.nkp.pet/okami.mom/albedo
61c43ca
main
1package daemon 2 3import ( 4"albedo/cli/internal/testwire" 5"net" 6"net/http" 7"net/http/httptest" 8"testing" 9) 10 11const generationA = testwire .GenerationA 12const generationB = testwire .GenerationB 13 14var canonicalSession = testwire .Session 15var canonicalInput = testwire .Input 16var canonicalEvent = testwire .Event 17var canonicalText = testwire .Text 18var writeBatch = testwire .WriteBatch 19var writeInitialStream = testwire .InitialStream 20var canonicalProgress = testwire .Progress 21 22func controlledConnection (t * testing.T ,handler http.HandlerFunc )* Connection { 23t .Helper () 24server := httptest .NewServer (http .HandlerFunc (func (w http.ResponseWriter ,r * http.Request ) { 25if r .URL .Path == "/server" { 26_ ,_ = w .Write ([]byte (testwire .Server )) 27return 28 } 29handler (w ,r ) 30 })) 31t .Cleanup (server .Close ) 32conn ,err := Attach (t .Context (),ConnectionSnapshot {Port :server .Listener .Addr ().(* net.TCPAddr ).Port ,Token :"token" ,Version :ProtocolVersion },nil ) 33if err != nil { 34t .Fatal (err ) 35 } 36t .Cleanup (conn .HTTPClient ().CloseIdleConnections ) 37return conn 38}