summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java15
-rw-r--r--packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java31
2 files changed, 40 insertions, 6 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
index 24a3aa92b315..561d92447c1f 100644
--- a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
+++ b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
@@ -1489,4 +1489,19 @@ public class ApplicationsState {
return mFirstFilter.filterApp(info) && mSecondFilter.filterApp(info);
}
}
+
+ public static final AppFilter FILTER_AUDIO = new AppFilter() {
+ @Override
+ public void init() {
+ }
+
+ @Override
+ public boolean filterApp(AppEntry entry) {
+ boolean isMusicApp;
+ synchronized(entry) {
+ isMusicApp = entry.info.category == ApplicationInfo.CATEGORY_AUDIO;
+ }
+ return isMusicApp;
+ }
+ };
}
diff --git a/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java b/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java
index 4f2347d845be..8a6ae86e4156 100644
--- a/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java
+++ b/packages/SettingsLib/tests/integ/src/com/android/settingslib/applications/ApplicationsStateTest.java
@@ -29,12 +29,10 @@ import org.junit.runners.JUnit4;
@RunWith(JUnit4.class)
public class ApplicationsStateTest {
- private ApplicationsState.AppFilter mFilter;
private ApplicationsState.AppEntry mEntry;
@Before
public void setUp() {
- mFilter = ApplicationsState.FILTER_GAMES;
mEntry = mock(ApplicationsState.AppEntry.class);
mEntry.info = mock(ApplicationInfo.class);
}
@@ -43,14 +41,14 @@ public class ApplicationsStateTest {
public void testGamesFilterAcceptsGameDeprecated() {
mEntry.info.flags = ApplicationInfo.FLAG_IS_GAME;
- assertThat(mFilter.filterApp(mEntry)).isTrue();
+ assertThat(ApplicationsState.FILTER_GAMES.filterApp(mEntry)).isTrue();
}
@Test
public void testGameFilterAcceptsCategorizedGame() {
mEntry.info.category = ApplicationInfo.CATEGORY_GAME;
- assertThat(mFilter.filterApp(mEntry)).isTrue();
+ assertThat(ApplicationsState.FILTER_GAMES.filterApp(mEntry)).isTrue();
}
@Test
@@ -58,13 +56,34 @@ public class ApplicationsStateTest {
mEntry.info.flags = ApplicationInfo.FLAG_IS_GAME;
mEntry.info.category = ApplicationInfo.CATEGORY_GAME;
- assertThat(mFilter.filterApp(mEntry)).isTrue();
+ assertThat(ApplicationsState.FILTER_GAMES.filterApp(mEntry)).isTrue();
}
@Test
public void testGamesFilterRejectsNotGame() {
mEntry.info.category = ApplicationInfo.CATEGORY_UNDEFINED;
- assertThat(mFilter.filterApp(mEntry)).isFalse();
+ assertThat(ApplicationsState.FILTER_GAMES.filterApp(mEntry)).isFalse();
+ }
+
+ @Test
+ public void testAudioFilterAcceptsCategorizedAudio() {
+ mEntry.info.category = ApplicationInfo.CATEGORY_AUDIO;
+
+ assertThat(ApplicationsState.FILTER_AUDIO.filterApp(mEntry)).isTrue();
+ }
+
+ @Test
+ public void testAudiosFilterRejectsNotAudio() {
+ mEntry.info.category = ApplicationInfo.CATEGORY_GAME;
+
+ assertThat(ApplicationsState.FILTER_AUDIO.filterApp(mEntry)).isFalse();
+ }
+
+ @Test
+ public void testAudiosFilterRejectsDefaultCategory() {
+ mEntry.info.category = ApplicationInfo.CATEGORY_UNDEFINED;
+
+ assertThat(ApplicationsState.FILTER_AUDIO.filterApp(mEntry)).isFalse();
}
}