github.com/keltia/go-ipfs@v0.3.8-0.20150909044612-210793031c63/thirdparty/eventlog/metadata_test.go (about) 1 package eventlog 2 3 import "testing" 4 5 func TestOverwrite(t *testing.T) { 6 t.Parallel() 7 8 under := Metadata{ 9 "a": Metadata{ 10 "b": Metadata{ 11 "c": Metadata{ 12 "d": "the original value", 13 "other": "SURVIVE", 14 }, 15 }, 16 }, 17 } 18 over := Metadata{ 19 "a": Metadata{ 20 "b": Metadata{ 21 "c": Metadata{ 22 "d": "a new value", 23 }, 24 }, 25 }, 26 } 27 28 out := DeepMerge(under, over) 29 30 dval := out["a"].(Metadata)["b"].(Metadata)["c"].(Metadata)["d"].(string) 31 if dval != "a new value" { 32 t.Fatal(dval) 33 } 34 surv := out["a"].(Metadata)["b"].(Metadata)["c"].(Metadata)["other"].(string) 35 if surv != "SURVIVE" { 36 t.Fatal(surv) 37 } 38 } 39 40 func TestMarshalJSON(t *testing.T) { 41 t.Parallel() 42 bs, _ := Metadata{"a": "b"}.JsonString() 43 t.Log(bs) 44 } 45 46 func TestMetadataIsLoggable(t *testing.T) { 47 t.Parallel() 48 func(l Loggable) { 49 }(Metadata{}) 50 }