From 45b02399c6e90aa22898cb91bb77254b6ad17732 Mon Sep 17 00:00:00 2001 From: Matheus Nogueira Date: Thu, 6 Jul 2023 16:26:43 -0300 Subject: [PATCH] fix: run output unmarshal (#2882) fix run output unmarshal --- server/test/test_json.go | 22 ++++++++++++++++++++++ server/test/test_json_test.go | 21 +++++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/server/test/test_json.go b/server/test/test_json.go index e328a9a305..7f62dfc2fc 100644 --- a/server/test/test_json.go +++ b/server/test/test_json.go @@ -162,6 +162,28 @@ func (o *Outputs) UnmarshalJSON(data []byte) error { return fmt.Errorf("test output json version is not supported. Expecting version 1 or 2") } +func (output *RunOutput) UnmarshalJSON(data []byte) error { + obj := struct { + Name string + Value string + SpanID string + Resolved bool + Error string + }{} + + err := json.Unmarshal(data, &obj) + if err != nil { + return err + } + + output.Name = obj.Name + output.Value = obj.Value + output.SpanID = obj.SpanID + output.Resolved = obj.Resolved + output.Error = fmt.Errorf(obj.Error) + return nil +} + func (sar SpanAssertionResult) MarshalJSON() ([]byte, error) { sid := "" if sar.SpanID != nil { diff --git a/server/test/test_json_test.go b/server/test/test_json_test.go index 23a5059da4..d033d7dbd0 100644 --- a/server/test/test_json_test.go +++ b/server/test/test_json_test.go @@ -150,6 +150,27 @@ func TestOutputsV1(t *testing.T) { assert.Equal(t, `attr:user_name`, testObject.Outputs[1].Value) } +func TestXXX(t *testing.T) { + jsonData := `[ + { + "Key": "http.host", + "Value": { + "Name": "http.host", + "Error": "", + "Value": "demo-pokemon-api.demo.svc.cluster.local", + "SpanID": "e28a7819ce8e0a01", + "Resolved": true + } + } + ]` + + run := test.Run{} + err := json.Unmarshal([]byte(jsonData), &run.Outputs) + + require.NoError(t, err) + assert.Equal(t, run.Outputs.Len(), 1) +} + func TestOutputsV2(t *testing.T) { v2Format := make([]test.Output, 0) v2Format = append(v2Format, test.Output{