(t *testing.T)
| 198 | } |
| 199 | |
| 200 | func TestTrack_MergesCustomProperties(t *testing.T) { |
| 201 | fake := &fakeAnalyticsClient{} |
| 202 | client := &AnalyticsTelemetryClient{client: fake} |
| 203 | |
| 204 | metadata := NewEventMetadata() |
| 205 | metadata.SetAppID("app-id") |
| 206 | ctx := WithEventMetadata(context.Background(), metadata) |
| 207 | |
| 208 | require.NoError(t, client.Track(ctx, "CLI Auth Started", map[string]any{"flow": "login"})) |
| 209 | require.Len(t, fake.messages, 1) |
| 210 | |
| 211 | track, ok := fake.messages[0].(analytics.Track) |
| 212 | require.True(t, ok) |
| 213 | assert.Equal(t, "login", track.Properties["flow"]) |
| 214 | assert.Equal(t, metadata.InvocationID, track.Properties["invocation_id"]) |
| 215 | assert.Equal(t, "app-id", track.Properties["app_id"]) |
| 216 | } |
| 217 | |
| 218 | func TestTrack_SequenceIsMonotonic(t *testing.T) { |
| 219 | fake := &fakeAnalyticsClient{} |
nothing calls this directly
no test coverage detected