Skip to content

Commit 3947cab

Browse files
authored
Fix testCollectorEndpoint typo and add tag assertions in jaeger_test (#1753)
* Fix testCollectorEndpoint typo and add tag assertions in jaeger_test * add PR number for CHANGLOG * add tag and sevicename assetions in TestExporter_ExportSpan * update assert.Equal to assert.Len and revert CHANGLOG * update assert.Len to require.Len
1 parent ecc635d commit 3947cab

File tree

1 file changed

+43
-25
lines changed

1 file changed

+43
-25
lines changed

exporters/trace/jaeger/jaeger_test.go

Lines changed: 43 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -277,62 +277,73 @@ func TestNewRawExporterShouldFailIfCollectorUnset(t *testing.T) {
277277
assert.Error(t, err)
278278
}
279279

280-
type testCollectorEnpoint struct {
280+
type testCollectorEndpoint struct {
281281
batchesUploaded []*gen.Batch
282282
}
283283

284-
func (c *testCollectorEnpoint) upload(batch *gen.Batch) error {
284+
func (c *testCollectorEndpoint) upload(batch *gen.Batch) error {
285285
c.batchesUploaded = append(c.batchesUploaded, batch)
286286
return nil
287287
}
288288

289-
var _ batchUploader = (*testCollectorEnpoint)(nil)
289+
var _ batchUploader = (*testCollectorEndpoint)(nil)
290290

291291
func withTestCollectorEndpoint() func() (batchUploader, error) {
292292
return func() (batchUploader, error) {
293-
return &testCollectorEnpoint{}, nil
293+
return &testCollectorEndpoint{}, nil
294294
}
295295
}
296296

297-
func withTestCollectorEndpointInjected(ce *testCollectorEnpoint) func() (batchUploader, error) {
297+
func withTestCollectorEndpointInjected(ce *testCollectorEndpoint) func() (batchUploader, error) {
298298
return func() (batchUploader, error) {
299299
return ce, nil
300300
}
301301
}
302302

303303
func TestExporter_ExportSpan(t *testing.T) {
304+
envStore, err := ottest.SetEnvVariables(map[string]string{
305+
envDisabled: "false",
306+
})
307+
require.NoError(t, err)
308+
defer func() {
309+
require.NoError(t, envStore.Restore())
310+
}()
311+
304312
const (
305313
serviceName = "test-service"
306314
tagKey = "key"
307315
tagVal = "val"
308316
)
309-
// Create Jaeger Exporter
310-
exp, err := NewRawExporter(
311-
withTestCollectorEndpoint(),
317+
318+
testCollector := &testCollectorEndpoint{}
319+
tp, spanFlush, err := NewExportPipeline(
320+
withTestCollectorEndpointInjected(testCollector),
312321
WithSDKOptions(
313322
sdktrace.WithResource(resource.NewWithAttributes(
314323
semconv.ServiceNameKey.String(serviceName),
315324
attribute.String(tagKey, tagVal),
316325
)),
317326
),
318327
)
319-
320328
assert.NoError(t, err)
321-
322-
tp := sdktrace.NewTracerProvider(
323-
sdktrace.WithSampler(sdktrace.AlwaysSample()),
324-
sdktrace.WithSyncer(exp),
325-
)
326329
otel.SetTracerProvider(tp)
327-
_, span := otel.Tracer("test-tracer").Start(context.Background(), "test-span")
328-
span.End()
330+
tracer := otel.Tracer("test-tracer")
331+
for i := 0; i < 3; i++ {
332+
_, span := tracer.Start(context.Background(), fmt.Sprintf("test-span-%d", i))
333+
span.End()
334+
assert.True(t, span.SpanContext().IsValid())
335+
}
329336

330-
assert.True(t, span.SpanContext().IsValid())
337+
spanFlush()
338+
batchesUploaded := testCollector.batchesUploaded
339+
require.Len(t, batchesUploaded, 1)
340+
uploadedBatch := batchesUploaded[0]
341+
assert.Equal(t, serviceName, uploadedBatch.GetProcess().GetServiceName())
342+
assert.Len(t, uploadedBatch.GetSpans(), 3)
331343

332-
exp.Flush()
333-
tc := exp.uploader.(*testCollectorEnpoint)
334-
assert.True(t, len(tc.batchesUploaded) == 1)
335-
assert.True(t, len(tc.batchesUploaded[0].GetSpans()) == 1)
344+
require.Len(t, uploadedBatch.GetProcess().GetTags(), 1)
345+
assert.Equal(t, tagKey, uploadedBatch.GetProcess().GetTags()[0].GetKey())
346+
assert.Equal(t, tagVal, uploadedBatch.GetProcess().GetTags()[0].GetVStr())
336347
}
337348

338349
func Test_spanSnapshotToThrift(t *testing.T) {
@@ -943,14 +954,17 @@ func TestNewExporterPipelineWithOptions(t *testing.T) {
943954
const (
944955
serviceName = "test-service"
945956
eventCountLimit = 10
957+
tagKey = "key"
958+
tagVal = "val"
946959
)
947960

948-
testCollector := &testCollectorEnpoint{}
961+
testCollector := &testCollectorEndpoint{}
949962
tp, spanFlush, err := NewExportPipeline(
950963
withTestCollectorEndpointInjected(testCollector),
951964
WithSDKOptions(
952965
sdktrace.WithResource(resource.NewWithAttributes(
953966
semconv.ServiceNameKey.String(serviceName),
967+
attribute.String(tagKey, tagVal),
954968
)),
955969
sdktrace.WithSpanLimits(sdktrace.SpanLimits{
956970
EventCountLimit: eventCountLimit,
@@ -970,10 +984,14 @@ func TestNewExporterPipelineWithOptions(t *testing.T) {
970984
assert.True(t, span.SpanContext().IsValid())
971985

972986
batchesUploaded := testCollector.batchesUploaded
973-
assert.True(t, len(batchesUploaded) == 1)
987+
require.Len(t, batchesUploaded, 1)
974988
uploadedBatch := batchesUploaded[0]
975989
assert.Equal(t, serviceName, uploadedBatch.GetProcess().GetServiceName())
976-
assert.True(t, len(uploadedBatch.GetSpans()) == 1)
990+
require.Len(t, uploadedBatch.GetSpans(), 1)
977991
uploadedSpan := uploadedBatch.GetSpans()[0]
978-
assert.Equal(t, eventCountLimit, len(uploadedSpan.GetLogs()))
992+
assert.Len(t, uploadedSpan.GetLogs(), eventCountLimit)
993+
994+
require.Len(t, uploadedBatch.GetProcess().GetTags(), 1)
995+
assert.Equal(t, tagKey, uploadedBatch.GetProcess().GetTags()[0].GetKey())
996+
assert.Equal(t, tagVal, uploadedBatch.GetProcess().GetTags()[0].GetVStr())
979997
}

0 commit comments

Comments
 (0)