MM-32047:Added AppCustomURLSchemes settings to telemetry (#16796)
* Added AppCustomURLSchemes to telemetry * Added Slices compare check isDefault function * Replaced reflect based solution for comparing string slices * added default array Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
fbe0294e86
Коммит
0abceccb58
@@ -182,6 +182,18 @@ func (ts *TelemetryService) sendTelemetry(event string, properties map[string]in
|
||||
}
|
||||
}
|
||||
|
||||
func isDefaultArray(setting, defaultValue []string) bool {
|
||||
if len(setting) != len(defaultValue) {
|
||||
return false
|
||||
}
|
||||
for i := 0; i < len(setting); i++ {
|
||||
if setting[i] != defaultValue[i] {
|
||||
return false
|
||||
}
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
func isDefault(setting interface{}, defaultValue interface{}) bool {
|
||||
return setting == defaultValue
|
||||
}
|
||||
@@ -698,6 +710,7 @@ func (ts *TelemetryService) trackConfig() {
|
||||
})
|
||||
|
||||
ts.sendTelemetry(TrackConfigNativeApp, map[string]interface{}{
|
||||
"isdefault_app_custom_url_schemes": isDefaultArray(cfg.NativeAppSettings.AppCustomURLSchemes, model.GetDefaultAppCustomURLSchemes()),
|
||||
"isdefault_app_download_link": isDefault(*cfg.NativeAppSettings.AppDownloadLink, model.NATIVEAPP_SETTINGS_DEFAULT_APP_DOWNLOAD_LINK),
|
||||
"isdefault_android_app_download_link": isDefault(*cfg.NativeAppSettings.AndroidAppDownloadLink, model.NATIVEAPP_SETTINGS_DEFAULT_ANDROID_APP_DOWNLOAD_LINK),
|
||||
"isdefault_iosapp_download_link": isDefault(*cfg.NativeAppSettings.IosAppDownloadLink, model.NATIVEAPP_SETTINGS_DEFAULT_IOS_APP_DOWNLOAD_LINK),
|
||||
|
||||
@@ -528,3 +528,9 @@ func TestRudderTelemetry(t *testing.T) {
|
||||
assert.Equal(t, "abc123", config.RudderKey)
|
||||
})
|
||||
}
|
||||
|
||||
func TestIsDefaultArray(t *testing.T) {
|
||||
assert.True(t, isDefaultArray([]string{"one", "two"}, []string{"one", "two"}))
|
||||
assert.False(t, isDefaultArray([]string{"one", "two"}, []string{"one", "two", "three"}))
|
||||
assert.False(t, isDefaultArray([]string{"one", "two"}, []string{"one", "three"}))
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user