(t *testing.T)
| 130 | func (f *fakeAnalyticsClient) Close() error { return nil } |
| 131 | |
| 132 | func TestIdentify_IncludesUserWhenAuthenticated(t *testing.T) { |
| 133 | fake := &fakeAnalyticsClient{} |
| 134 | client := &AnalyticsTelemetryClient{client: fake} |
| 135 | |
| 136 | metadata := NewEventMetadata() |
| 137 | metadata.SetUser("user-42", "user@test.com", "Test User") |
| 138 | ctx := WithEventMetadata(context.Background(), metadata) |
| 139 | |
| 140 | require.NoError(t, client.Identify(ctx)) |
| 141 | require.Len(t, fake.messages, 1) |
| 142 | |
| 143 | identify, ok := fake.messages[0].(analytics.Identify) |
| 144 | require.True(t, ok) |
| 145 | assert.Equal(t, "user-42", identify.UserId) |
| 146 | assert.Equal(t, metadata.AnonymousID, identify.AnonymousId) |
| 147 | assert.Equal(t, "user@test.com", identify.Traits["email"]) |
| 148 | assert.Equal(t, "Test User", identify.Traits["name"]) |
| 149 | } |
| 150 | |
| 151 | func TestIdentify_OmitsUserWhenAnonymous(t *testing.T) { |
| 152 | fake := &fakeAnalyticsClient{} |
nothing calls this directly
no test coverage detected