Skip to content

Commit

Permalink
Add tests
Browse files Browse the repository at this point in the history
  • Loading branch information
knusbaum committed Jul 21, 2020
1 parent 1b10a40 commit 041ea03
Show file tree
Hide file tree
Showing 3 changed files with 42 additions and 0 deletions.
2 changes: 2 additions & 0 deletions ddtrace/tracer/option.go
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,8 @@ func newConfig(opts ...StartOption) *config {
c.logStartup = internal.BoolEnv("DD_TRACE_STARTUP_LOGS", true)
if internal.BoolEnv("DD_TRACE_ANALYTICS_ENABLED", false) {
globalconfig.SetAnalyticsRate(1.0)
} else {
globalconfig.SetAnalyticsRate(math.NaN())
}
c.runtimeMetrics = internal.BoolEnv("DD_RUNTIME_METRICS_ENABLED", false)
c.debug = internal.BoolEnv("DD_TRACE_DEBUG", false)
Expand Down
22 changes: 22 additions & 0 deletions ddtrace/tracer/option_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ func TestTracerOptionsDefaults(t *testing.T) {

t.Run("analytics", func(t *testing.T) {
assert := assert.New(t)
defer globalconfig.SetAnalyticsRate(math.NaN())
assert.True(math.IsNaN(globalconfig.AnalyticsRate()))
newTracer(WithAnalyticsRate(0.5))
assert.Equal(0.5, globalconfig.AnalyticsRate())
Expand All @@ -51,6 +52,27 @@ func TestTracerOptionsDefaults(t *testing.T) {
assert.Equal(1., globalconfig.AnalyticsRate())
})

t.Run("analyticsEnv", func(t *testing.T) {
assert := assert.New(t)
assert.True(math.IsNaN(globalconfig.AnalyticsRate()))
os.Setenv("DD_TRACE_ANALYTICS_ENABLED", "true")
defer os.Unsetenv("DD_TRACE_ANALYTICS_ENABLED")
newTracer()
assert.Equal(1.0, globalconfig.AnalyticsRate())
os.Setenv("DD_TRACE_ANALYTICS_ENABLED", "false")
newTracer()
assert.True(math.IsNaN(globalconfig.AnalyticsRate()))
os.Setenv("DD_TRACE_ANALYTICS_ENABLED", "true")
newTracer(WithAnalytics(false))
assert.True(math.IsNaN(globalconfig.AnalyticsRate()))
os.Setenv("DD_TRACE_ANALYTICS_ENABLED", "false")
newTracer(WithAnalytics(true))
assert.Equal(1.0, globalconfig.AnalyticsRate())
os.Setenv("DD_TRACE_ANALYTICS_ENABLED", "false")
newTracer(WithAnalyticsRate(0.5))
assert.Equal(0.5, globalconfig.AnalyticsRate())
})

t.Run("dogstatsd", func(t *testing.T) {
t.Run("default", func(t *testing.T) {
tracer := newTracer()
Expand Down
18 changes: 18 additions & 0 deletions ddtrace/tracer/tracer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,24 @@ func TestTracerRuntimeMetrics(t *testing.T) {
assert.Contains(t, tp.Lines()[0], "DEBUG: Runtime metrics enabled")
})

t.Run("env", func(t *testing.T) {
os.Setenv("DD_RUNTIME_METRICS_ENABLED", "true")
defer os.Unsetenv("DD_RUNTIME_METRICS_ENABLED")
tp := new(testLogger)
tracer := newTracer(WithLogger(tp), WithDebugMode(true))
defer tracer.Stop()
assert.Contains(t, tp.Lines()[0], "DEBUG: Runtime metrics enabled")
})

t.Run("overrideEnv", func(t *testing.T) {
os.Setenv("DD_RUNTIME_METRICS_ENABLED", "false")
defer os.Unsetenv("DD_RUNTIME_METRICS_ENABLED")
tp := new(testLogger)
tracer := newTracer(WithRuntimeMetrics(), WithLogger(tp), WithDebugMode(true))
defer tracer.Stop()
assert.Contains(t, tp.Lines()[0], "DEBUG: Runtime metrics enabled")
})

t.Run("off", func(t *testing.T) {
tp := new(testLogger)
tracer := newTracer(WithLogger(tp), WithDebugMode(true))
Expand Down

0 comments on commit 041ea03

Please sign in to comment.