package mocktracer import ( "testing" "github.com/stretchr/testify/assert" ) func TestMockIDs(t *testing.T) { last := nextID() for i := 0; i < 10; i++ { // ensure incremental (unique) IDs next := nextID() if next <= last { t.Fail() } last = next } } func TestSpanContextSetBaggage(t *testing.T) { var sc spanContext sc.setBaggageItem("a", "b") sc.setBaggageItem("c", "d") assert.Equal(t, sc.baggage["a"], "b") assert.Equal(t, sc.baggage["c"], "d") } func TestSpanContextGetBaggage(t *testing.T) { var sc spanContext sc.setBaggageItem("a", "b") sc.setBaggageItem("c", "d") assert.Equal(t, sc.baggageItem("a"), "b") assert.Equal(t, sc.baggageItem("c"), "d") } func TestSpanContextIterator(t *testing.T) { var sc spanContext sc.setBaggageItem("a", "b") sc.setBaggageItem("c", "d") t.Run("some", func(t *testing.T) { var seen int sc.ForeachBaggageItem(func(k, v string) bool { seen++ return false }) assert.Equal(t, seen, 1) }) t.Run("all", func(t *testing.T) { seen := make(map[string]interface{}, 2) sc.ForeachBaggageItem(func(k, v string) bool { seen[k] = v return true }) assert.Len(t, seen, 2) assert.Equal(t, seen["a"], "b") assert.Equal(t, seen["c"], "d") }) }