Skip to content

Commit

Permalink
Add new tracer provider unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
renaz6 committed Dec 5, 2022
1 parent 42e3a18 commit 065b27e
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 2 deletions.
10 changes: 8 additions & 2 deletions tracerProvider.go
Original file line number Diff line number Diff line change
Expand Up @@ -78,13 +78,16 @@ type ProviderConstructor func(config Config) (trace.TracerProvider, error)
var providersConfig = map[string]ProviderConstructor{
"otlp/grpc": func(cfg Config) (trace.TracerProvider, error) {
// Send traces over gRPC
if cfg.Endpoint == "" {
return nil, ErrTracerProviderBuildFailed
}
exporter, err := otlptracegrpc.New(context.Background(),

otlptracegrpc.WithEndpoint(cfg.Endpoint),
otlptracegrpc.WithInsecure(),
)
if err != nil {
return nil, err
return nil, fmt.Errorf("%w: %v", ErrTracerProviderBuildFailed, err)
}

return sdktrace.NewTracerProvider(
Expand All @@ -100,13 +103,16 @@ var providersConfig = map[string]ProviderConstructor{
},
"otlp/http": func(cfg Config) (trace.TracerProvider, error) {
// Send traces over HTTP
if cfg.Endpoint == "" {
return nil, ErrTracerProviderBuildFailed
}
exporter, err := otlptracehttp.New(context.Background(),

otlptracehttp.WithEndpoint(cfg.Endpoint),
otlptracehttp.WithInsecure(),
)
if err != nil {
return nil, err
return nil, fmt.Errorf("%w: %v", ErrTracerProviderBuildFailed, err)
}

return sdktrace.NewTracerProvider(
Expand Down
28 changes: 28 additions & 0 deletions tracerProvider_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,34 @@ func TestConfigureTracerProvider(t *testing.T) {
Config Config
Err error
}{
{
Description: "Otlp/gRPC: Valid",
Config: Config{
Provider: "otlp/grpc",
Endpoint: "http://localhost",
},
},
{
Description: "Otlp/gRPC: Missing Endpoint",
Config: Config{
Provider: "otlp/grpc",
},
Err: ErrTracerProviderBuildFailed,
},
{
Description: "Otlp/HTTP: Valid",
Config: Config{
Provider: "otlp/http",
Endpoint: "http://localhost",
},
},
{
Description: "Otlp/HTTP: Missing Endpoint",
Config: Config{
Provider: "otlp/http",
},
Err: ErrTracerProviderBuildFailed,
},
{
Description: "Jaeger: Missing endpoint",
Config: Config{
Expand Down

0 comments on commit 065b27e

Please sign in to comment.