Something went wrong. Try again.
sloproxy
Something went wrong. Try again.
3.9 kB · 108 lines
Go
at main
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109package pluginabi
import ( "encoding/json" "testing")
func TestEnvelopeRoundTrip(t *testing.T) { payload := json.RawMessage(`{"name":"example"}`) env := Envelope{ OK: true, Result: payload, }
raw, errMarshal := json.Marshal(env) if errMarshal != nil { t.Fatalf("marshal envelope: %v", errMarshal) }
var decoded Envelope if errUnmarshal := json.Unmarshal(raw, &decoded); errUnmarshal != nil { t.Fatalf("unmarshal envelope: %v", errUnmarshal) } if !decoded.OK || string(decoded.Result) != string(payload) { t.Fatalf("decoded envelope = %#v, want ok payload", decoded) }}
func TestMethodNamesAreStable(t *testing.T) { if SchemaVersion != 5 { t.Fatalf("SchemaVersion = %d, want 5", SchemaVersion) } if SchemaVersionWebSocketResponseObserver != 4 { t.Fatalf("SchemaVersionWebSocketResponseObserver = %d, want 4", SchemaVersionWebSocketResponseObserver) } if SchemaVersionStreamChunkOmitRequestBody != 3 { t.Fatalf("SchemaVersionStreamChunkOmitRequestBody = %d, want 3", SchemaVersionStreamChunkOmitRequestBody) } if SchemaVersionStreamChunkOmitHistory != 5 { t.Fatalf("SchemaVersionStreamChunkOmitHistory = %d, want 5", SchemaVersionStreamChunkOmitHistory) } if MethodPluginRegister != "plugin.register" { t.Fatalf("MethodPluginRegister = %q", MethodPluginRegister) } if MethodPluginQuiesce != "plugin.quiesce" { t.Fatalf("MethodPluginQuiesce = %q", MethodPluginQuiesce) } if MethodRequestInterceptBefore != "request.intercept_before" { t.Fatalf("MethodRequestInterceptBefore = %q", MethodRequestInterceptBefore) } if MethodRequestInterceptAfter != "request.intercept_after" { t.Fatalf("MethodRequestInterceptAfter = %q", MethodRequestInterceptAfter) } if MethodRequestComplete != "request.complete" { t.Fatalf("MethodRequestComplete = %q", MethodRequestComplete) } if MethodResponseInterceptAfter != "response.intercept_after" { t.Fatalf("MethodResponseInterceptAfter = %q", MethodResponseInterceptAfter) } if MethodResponseInterceptStreamChunk != "response.intercept_stream_chunk" { t.Fatalf("MethodResponseInterceptStreamChunk = %q", MethodResponseInterceptStreamChunk) } if MethodWebSocketResponseEvent != "websocket.response_event" { t.Fatalf("MethodWebSocketResponseEvent = %q", MethodWebSocketResponseEvent) } if MethodHostHTTPDo != "host.http.do" { t.Fatalf("MethodHostHTTPDo = %q", MethodHostHTTPDo) } if MethodHostHTTPStreamRead != "host.http.stream_read" { t.Fatalf("MethodHostHTTPStreamRead = %q", MethodHostHTTPStreamRead) } if MethodHostModelExecute != "host.model.execute" { t.Fatalf("MethodHostModelExecute = %q", MethodHostModelExecute) } if MethodHostModelExecuteStream != "host.model.execute_stream" { t.Fatalf("MethodHostModelExecuteStream = %q", MethodHostModelExecuteStream) } if MethodHostModelStreamRead != "host.model.stream_read" { t.Fatalf("MethodHostModelStreamRead = %q", MethodHostModelStreamRead) } if MethodHostModelStreamClose != "host.model.stream_close" { t.Fatalf("MethodHostModelStreamClose = %q", MethodHostModelStreamClose) } if MethodHostAuthList != "host.auth.list" { t.Fatalf("MethodHostAuthList = %q", MethodHostAuthList) } if MethodHostAuthGet != "host.auth.get" { t.Fatalf("MethodHostAuthGet = %q", MethodHostAuthGet) } if MethodHostAuthGetRuntime != "host.auth.get_runtime" { t.Fatalf("MethodHostAuthGetRuntime = %q", MethodHostAuthGetRuntime) } if MethodHostAuthSave != "host.auth.save" { t.Fatalf("MethodHostAuthSave = %q", MethodHostAuthSave) } if MethodExecutorExecuteStream != "executor.execute_stream" { t.Fatalf("MethodExecutorExecuteStream = %q", MethodExecutorExecuteStream) }}
func TestSchedulerPickMethodName(t *testing.T) { if MethodSchedulerPick != "scheduler.pick" { t.Fatalf("MethodSchedulerPick = %q", MethodSchedulerPick) } if MethodModelRoute != "model.route" { t.Fatalf("MethodModelRoute = %q", MethodModelRoute) }}