Merge "Respect forceNonSystemPackage param when creating new Setting objects."

This commit is contained in:
Matt Pape
2020-02-05 20:30:12 +00:00
committed by Android (Google) Code Review
2 changed files with 26 additions and 3 deletions

View File

@@ -375,6 +375,24 @@ public class DeviceConfigTest {
assertThat(result).isEqualTo(newValue);
}
@Test
public void resetToDefault_makeDefault() {
DeviceConfig.setProperty(NAMESPACE, KEY, VALUE, true);
assertThat(DeviceConfig.getProperty(NAMESPACE, KEY)).isEqualTo(VALUE);
DeviceConfig.resetToDefaults(Settings.RESET_MODE_PACKAGE_DEFAULTS, NAMESPACE);
assertThat(DeviceConfig.getProperty(NAMESPACE, KEY)).isEqualTo(VALUE);
}
@Test
public void resetToDefault_doNotMakeDefault() {
DeviceConfig.setProperty(NAMESPACE, KEY, VALUE, false);
assertThat(DeviceConfig.getProperty(NAMESPACE, KEY)).isEqualTo(VALUE);
DeviceConfig.resetToDefaults(Settings.RESET_MODE_PACKAGE_DEFAULTS, NAMESPACE);
assertThat(DeviceConfig.getProperty(NAMESPACE, KEY)).isNull();
}
@Test
public void getProperties_fullNamespace() {
Properties properties = DeviceConfig.getProperties(NAMESPACE);

View File

@@ -425,7 +425,8 @@ final class SettingsState {
}
newState = oldState;
} else {
newState = new Setting(name, value, makeDefault, packageName, tag);
newState = new Setting(name, value, makeDefault, packageName, tag,
forceNonSystemPackage);
mSettings.put(name, newState);
}
@@ -1173,11 +1174,15 @@ final class SettingsState {
public Setting(String name, String value, boolean makeDefault, String packageName,
String tag) {
this(name, value, makeDefault, packageName, tag, false);
}
Setting(String name, String value, boolean makeDefault, String packageName,
String tag, boolean forceNonSystemPackage) {
this.name = name;
// overrideableByRestore = true as the first initialization isn't considered a
// modification.
update(value, makeDefault, packageName, tag, false,
/* overrideableByRestore */ true);
update(value, makeDefault, packageName, tag, forceNonSystemPackage, true);
}
public Setting(String name, String value, String defaultValue,