25 lines · 730 B · Go
RawDownload
package executor import (	"fmt"	"net/http"	"testing") func TestUpstreamWebsocketReplayRequiredError(t *testing.T) {	err := NewUpstreamWebsocketReplayRequiredError()	if !IsUpstreamWebsocketReplayRequired(err) {		t.Fatal("replay error was not recognized")	}	if !IsUpstreamWebsocketReplayRequired(fmt.Errorf("wrapped: %w", err)) {		t.Fatal("wrapped replay error was not recognized")	}	statusErr, ok := err.(interface{ StatusCode() int })	if !ok || statusErr.StatusCode() != http.StatusUpgradeRequired {		t.Fatalf("replay error = %T %v, want status 426", err, err)	}	requestErr, ok := err.(RequestScopedError)	if !ok || !requestErr.IsRequestScoped() {		t.Fatalf("replay error = %T, want request scoped", err)	}}