From 43bc211608263ac44c8e4fb115f84cf127844c88 Mon Sep 17 00:00:00 2001 From: Daniel Peykov Date: Tue, 13 Jun 2023 17:12:40 +0000 Subject: Disable device config syncing by default in test harness mode Ensures that platform flags are deterministic during testing while still allowing tests/modules to enable syncing when necessary. Bug: 283536230 Test: manual + heavy presubmit Change-Id: I1b6f59f6b6928cd82b37909d8cfb07ad5b6b8acc --- .../src/com/android/providers/settings/SettingsProvider.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java index 84a559391343..8c49621d9edf 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java @@ -1245,11 +1245,13 @@ public class SettingsProvider extends ContentProvider { Setting settingLocked = mSettingsRegistry.getSettingLocked( SETTINGS_TYPE_GLOBAL, UserHandle.USER_SYSTEM, Global.DEVICE_CONFIG_SYNC_DISABLED); - if (settingLocked == null) { - return SYNC_DISABLED_MODE_NONE; + String settingValue = settingLocked == null ? null : settingLocked.getValue(); + if (settingValue == null) { + // Disable sync by default in test harness mode. + return ActivityManager.isRunningInUserTestHarness() + ? SYNC_DISABLED_MODE_PERSISTENT : SYNC_DISABLED_MODE_NONE; } - String settingValue = settingLocked.getValue(); - boolean isSyncDisabledPersistent = settingValue != null && !"0".equals(settingValue); + boolean isSyncDisabledPersistent = !"0".equals(settingValue); return isSyncDisabledPersistent ? SYNC_DISABLED_MODE_PERSISTENT : SYNC_DISABLED_MODE_NONE; } finally { -- cgit v1.2.3-59-g8ed1b