1package conversions_test 2 3import ( 4 "encoding/binary" 5 "testing" 6 "testing/quick" 7 8 . "github.com/lightstep/lightstep-tracer-go/lightstepoc/internal/conversions" 9 10 . "github.com/onsi/ginkgo" 11 . "github.com/onsi/gomega" 12 "go.opencensus.io/trace" 13) 14 15func TestConversions(t *testing.T) { 16 RegisterFailHandler(Fail) 17 RunSpecs(t, "Conversions Suite") 18} 19 20var _ = Describe("#ConvertTraceID", func() { 21 It("captures the first 8 bytes of the ID", func() { 22 err := quick.Check(func(a uint64, b uint64) bool { 23 var traceID trace.TraceID 24 25 binary.BigEndian.PutUint64(traceID[0:8], a) 26 binary.BigEndian.PutUint64(traceID[8:], b) 27 28 Expect(ConvertTraceID(traceID)).To(Equal(b)) 29 30 return true 31 }, nil) 32 33 Expect(err).NotTo(HaveOccurred()) 34 }) 35}) 36 37var _ = Describe("#ConvertSpanID", func() { 38 It("captures the whole ID", func() { 39 err := quick.Check(func(a uint64) bool { 40 var spanID trace.SpanID 41 42 binary.BigEndian.PutUint64(spanID[:], a) 43 44 Expect(ConvertSpanID(spanID)).To(Equal(a)) 45 46 return true 47 }, nil) 48 49 Expect(err).NotTo(HaveOccurred()) 50 }) 51}) 52