diff --git a/metadata/metadata_test.go b/metadata/metadata_test.go new file mode 100644 index 00000000..845789da --- /dev/null +++ b/metadata/metadata_test.go @@ -0,0 +1,28 @@ +package metadata + +import ( + "testing" + + "golang.org/x/net/context" +) + +func TestMetadataContext(t *testing.T) { + md := Metadata{ + "foo": "bar", + } + + ctx := NewContext(context.TODO(), md) + + emd, ok := FromContext(ctx) + if !ok { + t.Errorf("Unexpected error retrieving metadata, got %t", ok) + } + + if emd["foo"] != md["foo"] { + t.Errorf("Expected key: %s val: %s, got key: %s val: %s", "foo", md["foo"], "foo", emd["foo"]) + } + + if i := len(emd); i != 1 { + t.Errorf("Expected metadata length 1 got %d", i) + } +}