Loading services/core/java/com/android/server/hdmi/HdmiCecConfig.java +4 −4 Original line number Diff line number Diff line Loading @@ -221,7 +221,7 @@ public class HdmiCecConfig { } } private class Setting { protected class Setting { @NonNull private final Context mContext; @NonNull private final @CecSettingName String mName; private final boolean mUserConfigurable; Loading Loading @@ -566,7 +566,7 @@ public class HdmiCecConfig { } } private String retrieveValue(@NonNull Setting setting, @NonNull String defaultValue) { protected String retrieveValue(@NonNull Setting setting, @NonNull String defaultValue) { @Storage int storage = getStorage(setting); String storageKey = getStorageKey(setting); if (storage == STORAGE_SYSPROPS) { Loading @@ -582,7 +582,7 @@ public class HdmiCecConfig { return null; } private void storeValue(@NonNull Setting setting, @NonNull String value) { protected void storeValue(@NonNull Setting setting, @NonNull String value) { @Storage int storage = getStorage(setting); String storageKey = getStorageKey(setting); if (storage == STORAGE_SYSPROPS) { Loading Loading @@ -626,7 +626,7 @@ public class HdmiCecConfig { notifySettingChanged(setting); } private void notifySettingChanged(@NonNull Setting setting) { protected void notifySettingChanged(@NonNull Setting setting) { synchronized (mLock) { ArrayMap<SettingChangeListener, Executor> listeners = mSettingChangeListeners.get(setting); Loading services/tests/servicestests/src/com/android/server/hdmi/FakeHdmiCecConfig.java +15 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,8 @@ import android.content.res.Resources; import com.android.internal.R; import java.util.HashMap; /** * Fake class which stubs default system configuration with user-configurable * settings (useful for testing). Loading @@ -33,6 +35,8 @@ import com.android.internal.R; final class FakeHdmiCecConfig extends HdmiCecConfig { private static final String TAG = "FakeHdmiCecConfig"; private final HashMap<String, String> mSettings = new HashMap<>(); public static Context buildContext(Context context) { Context contextSpy = spy(new ContextWrapper(context)); doReturn(buildResources(context)).when(contextSpy).getResources(); Loading Loading @@ -218,4 +222,15 @@ final class FakeHdmiCecConfig extends HdmiCecConfig { FakeHdmiCecConfig(@NonNull Context context) { super(buildContext(context), new StorageAdapter(context)); } @Override protected String retrieveValue(@NonNull Setting setting, @NonNull String defaultValue) { return mSettings.getOrDefault(setting.getName(), defaultValue); } @Override protected void storeValue(@NonNull Setting setting, @NonNull String value) { mSettings.put(setting.getName(), value); notifySettingChanged(setting); } } services/tests/servicestests/src/com/android/server/hdmi/HdmiControlServiceTest.java +0 −21 Original line number Diff line number Diff line Loading @@ -47,7 +47,6 @@ import android.os.PowerManager; import android.os.RemoteException; import android.os.test.TestLooper; import android.platform.test.annotations.Presubmit; import android.provider.Settings; import androidx.test.InstrumentationRegistry; import androidx.test.filters.SmallTest; Loading Loading @@ -237,9 +236,6 @@ public class HdmiControlServiceTest { mHdmiPortInfo[3] = new HdmiPortInfo(4, HdmiPortInfo.PORT_INPUT, 0x3000, true, false, false); mNativeWrapper.setPortInfo(mHdmiPortInfo); mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( HdmiControlManager.CEC_SETTING_NAME_HDMI_CEC_ENABLED, HdmiControlManager.HDMI_CEC_CONTROL_ENABLED); mHdmiControlServiceSpy.initService(); mHdmiControlServiceSpy.allocateLogicalAddress(mLocalDevices, INITIATED_BY_ENABLE_CEC); Loading Loading @@ -361,23 +357,6 @@ public class HdmiControlServiceTest { HdmiControlManager.VOLUME_CONTROL_ENABLED); } @Test public void setAndGetCecVolumeControlEnabled_changesSetting() { mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( HdmiControlManager.CEC_SETTING_NAME_VOLUME_CONTROL_MODE, HdmiControlManager.VOLUME_CONTROL_DISABLED); assertThat(mHdmiControlServiceSpy.readIntSetting( Settings.Global.HDMI_CONTROL_VOLUME_CONTROL_ENABLED, -1)).isEqualTo( HdmiControlManager.VOLUME_CONTROL_DISABLED); mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( HdmiControlManager.CEC_SETTING_NAME_VOLUME_CONTROL_MODE, HdmiControlManager.VOLUME_CONTROL_ENABLED); assertThat(mHdmiControlServiceSpy.readIntSetting( Settings.Global.HDMI_CONTROL_VOLUME_CONTROL_ENABLED, -1)).isEqualTo( HdmiControlManager.VOLUME_CONTROL_ENABLED); } @Test public void setAndGetCecVolumeControlEnabledInternal_doesNotChangeSetting() { mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( Loading Loading
services/core/java/com/android/server/hdmi/HdmiCecConfig.java +4 −4 Original line number Diff line number Diff line Loading @@ -221,7 +221,7 @@ public class HdmiCecConfig { } } private class Setting { protected class Setting { @NonNull private final Context mContext; @NonNull private final @CecSettingName String mName; private final boolean mUserConfigurable; Loading Loading @@ -566,7 +566,7 @@ public class HdmiCecConfig { } } private String retrieveValue(@NonNull Setting setting, @NonNull String defaultValue) { protected String retrieveValue(@NonNull Setting setting, @NonNull String defaultValue) { @Storage int storage = getStorage(setting); String storageKey = getStorageKey(setting); if (storage == STORAGE_SYSPROPS) { Loading @@ -582,7 +582,7 @@ public class HdmiCecConfig { return null; } private void storeValue(@NonNull Setting setting, @NonNull String value) { protected void storeValue(@NonNull Setting setting, @NonNull String value) { @Storage int storage = getStorage(setting); String storageKey = getStorageKey(setting); if (storage == STORAGE_SYSPROPS) { Loading Loading @@ -626,7 +626,7 @@ public class HdmiCecConfig { notifySettingChanged(setting); } private void notifySettingChanged(@NonNull Setting setting) { protected void notifySettingChanged(@NonNull Setting setting) { synchronized (mLock) { ArrayMap<SettingChangeListener, Executor> listeners = mSettingChangeListeners.get(setting); Loading
services/tests/servicestests/src/com/android/server/hdmi/FakeHdmiCecConfig.java +15 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,8 @@ import android.content.res.Resources; import com.android.internal.R; import java.util.HashMap; /** * Fake class which stubs default system configuration with user-configurable * settings (useful for testing). Loading @@ -33,6 +35,8 @@ import com.android.internal.R; final class FakeHdmiCecConfig extends HdmiCecConfig { private static final String TAG = "FakeHdmiCecConfig"; private final HashMap<String, String> mSettings = new HashMap<>(); public static Context buildContext(Context context) { Context contextSpy = spy(new ContextWrapper(context)); doReturn(buildResources(context)).when(contextSpy).getResources(); Loading Loading @@ -218,4 +222,15 @@ final class FakeHdmiCecConfig extends HdmiCecConfig { FakeHdmiCecConfig(@NonNull Context context) { super(buildContext(context), new StorageAdapter(context)); } @Override protected String retrieveValue(@NonNull Setting setting, @NonNull String defaultValue) { return mSettings.getOrDefault(setting.getName(), defaultValue); } @Override protected void storeValue(@NonNull Setting setting, @NonNull String value) { mSettings.put(setting.getName(), value); notifySettingChanged(setting); } }
services/tests/servicestests/src/com/android/server/hdmi/HdmiControlServiceTest.java +0 −21 Original line number Diff line number Diff line Loading @@ -47,7 +47,6 @@ import android.os.PowerManager; import android.os.RemoteException; import android.os.test.TestLooper; import android.platform.test.annotations.Presubmit; import android.provider.Settings; import androidx.test.InstrumentationRegistry; import androidx.test.filters.SmallTest; Loading Loading @@ -237,9 +236,6 @@ public class HdmiControlServiceTest { mHdmiPortInfo[3] = new HdmiPortInfo(4, HdmiPortInfo.PORT_INPUT, 0x3000, true, false, false); mNativeWrapper.setPortInfo(mHdmiPortInfo); mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( HdmiControlManager.CEC_SETTING_NAME_HDMI_CEC_ENABLED, HdmiControlManager.HDMI_CEC_CONTROL_ENABLED); mHdmiControlServiceSpy.initService(); mHdmiControlServiceSpy.allocateLogicalAddress(mLocalDevices, INITIATED_BY_ENABLE_CEC); Loading Loading @@ -361,23 +357,6 @@ public class HdmiControlServiceTest { HdmiControlManager.VOLUME_CONTROL_ENABLED); } @Test public void setAndGetCecVolumeControlEnabled_changesSetting() { mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( HdmiControlManager.CEC_SETTING_NAME_VOLUME_CONTROL_MODE, HdmiControlManager.VOLUME_CONTROL_DISABLED); assertThat(mHdmiControlServiceSpy.readIntSetting( Settings.Global.HDMI_CONTROL_VOLUME_CONTROL_ENABLED, -1)).isEqualTo( HdmiControlManager.VOLUME_CONTROL_DISABLED); mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( HdmiControlManager.CEC_SETTING_NAME_VOLUME_CONTROL_MODE, HdmiControlManager.VOLUME_CONTROL_ENABLED); assertThat(mHdmiControlServiceSpy.readIntSetting( Settings.Global.HDMI_CONTROL_VOLUME_CONTROL_ENABLED, -1)).isEqualTo( HdmiControlManager.VOLUME_CONTROL_ENABLED); } @Test public void setAndGetCecVolumeControlEnabledInternal_doesNotChangeSetting() { mHdmiControlServiceSpy.getHdmiCecConfig().setIntValue( Loading