package pool import ( "testing" ) func TestAuthenticateSetsLoginRequestID(t *testing.T) { p := &Proxy{ config: &Config{Wallet: "48test", Password: "x"}, stopCh: make(chan struct{}), } // authenticate will fail without real conn, but should bump loginRequestID before write fails _ = p.authenticate() if p.loginRequestID != 1 { t.Fatalf("expected loginRequestID=1, got %d", p.loginRequestID) } _ = p.authenticate() if p.loginRequestID != 2 { t.Fatalf("expected loginRequestID=2 after second login, got %d", p.loginRequestID) } } func TestHandleResponseLoginByTrackedID(t *testing.T) { p := &Proxy{ config: &Config{Wallet: "48test"}, stopCh: make(chan struct{}), loginRequestID: 42, } // Should not panic; login branch taken when ID matches p.handleResponse(StratumResponse{ ID: 42, Result: []byte(`{"id":"pool-session","status":"OK"}`), }) }