Files
pmg/internal/analytics/analytics_test.go
T
Sahil BansalGitHubdevin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
996d9aeca0 Add config support for disabling telemetry (#226)
* Add config-driven telemetry disable and surface telemetry status

* Update config/config_template_test.go

Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Signed-off-by: Sahil Bansal <bansalsahil315@gmail.com>

---------

Signed-off-by: Sahil Bansal <bansalsahil315@gmail.com>
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-04-22 22:04:56 +05:30

41 lines
903 B
Go

package analytics
import (
"os"
"testing"
"github.com/safedep/pmg/config"
"github.com/stretchr/testify/assert"
)
func TestIsDisabled(t *testing.T) {
t.Run("returns true if PMG_DISABLE_TELEMETRY is set to true", func(t *testing.T) {
os.Setenv(telemetryDisableEnvKey, "true")
defer os.Unsetenv(telemetryDisableEnvKey)
assert.True(t, IsDisabled())
})
t.Run("returns false if PMG_DISABLE_TELEMETRY is not set", func(t *testing.T) {
config.Get().Config.DisableTelemetry = false
assert.False(t, IsDisabled())
})
t.Run("returns true if telemetry is disabled in config", func(t *testing.T) {
config.Get().Config.DisableTelemetry = true
t.Cleanup(func() {
config.Get().Config.DisableTelemetry = false
})
assert.True(t, IsDisabled())
})
}
func TestCloseIsImmutable(t *testing.T) {
Close()
assert.Nil(t, globalPosthogClient)
Close()
assert.Nil(t, globalPosthogClient)
}