github.com/aavshr/aws-sdk-go@v1.41.3/private/protocol/eventstream/header_test.go (about) 1 package eventstream 2 3 import ( 4 "reflect" 5 "testing" 6 "time" 7 ) 8 9 func TestHeaders_Set(t *testing.T) { 10 expect := Headers{ 11 {Name: "ABC", Value: StringValue("123")}, 12 {Name: "EFG", Value: TimestampValue(time.Time{})}, 13 } 14 15 var actual Headers 16 actual.Set("ABC", Int32Value(123)) 17 actual.Set("ABC", StringValue("123")) // replace case 18 actual.Set("EFG", TimestampValue(time.Time{})) 19 20 if e, a := expect, actual; !reflect.DeepEqual(e, a) { 21 t.Errorf("expect %v headers, got %v", e, a) 22 } 23 } 24 25 func TestHeaders_Get(t *testing.T) { 26 headers := Headers{ 27 {Name: "ABC", Value: StringValue("123")}, 28 {Name: "EFG", Value: TimestampValue(time.Time{})}, 29 } 30 31 cases := []struct { 32 Name string 33 Value Value 34 }{ 35 {Name: "ABC", Value: StringValue("123")}, 36 {Name: "EFG", Value: TimestampValue(time.Time{})}, 37 {Name: "NotFound"}, 38 } 39 40 for i, c := range cases { 41 actual := headers.Get(c.Name) 42 if e, a := c.Value, actual; !reflect.DeepEqual(e, a) { 43 t.Errorf("%d, expect %v value, got %v", i, e, a) 44 } 45 } 46 } 47 48 func TestHeaders_Del(t *testing.T) { 49 headers := Headers{ 50 {Name: "ABC", Value: StringValue("123")}, 51 {Name: "EFG", Value: TimestampValue(time.Time{})}, 52 {Name: "HIJ", Value: StringValue("123")}, 53 {Name: "KML", Value: TimestampValue(time.Time{})}, 54 } 55 expectAfterDel := Headers{ 56 {Name: "EFG", Value: TimestampValue(time.Time{})}, 57 } 58 59 headers.Del("HIJ") 60 headers.Del("ABC") 61 headers.Del("KML") 62 63 if e, a := expectAfterDel, headers; !reflect.DeepEqual(e, a) { 64 t.Errorf("expect %v headers, got %v", e, a) 65 } 66 }