OSDN Git Service

Correctly report whether the current app is default home.
[android-x86/packages-apps-Settings.git] / tests / robotests / src / com / android / settings / applications / defaultapps / DefaultHomePreferenceControllerTest.java
index 6d6e2f8..21537f5 100644 (file)
@@ -17,6 +17,7 @@
 package com.android.settings.applications.defaultapps;
 
 
+import android.content.ComponentName;
 import android.content.Context;
 import android.os.UserManager;
 import android.support.v7.preference.Preference;
@@ -84,4 +85,33 @@ public class DefaultHomePreferenceControllerTest {
 
         verify(mPackageManager).getHomeActivities(anyList());
     }
+
+    @Test
+    public void testIsHomeDefault_noDefaultSet_shouldReturnTrue() {
+        when(mPackageManager.getHomeActivities(anyList())).thenReturn(null);
+        assertThat(DefaultHomePreferenceController.isHomeDefault("test.pkg", mPackageManager))
+                .isTrue();
+    }
+
+    @Test
+    public void testIsHomeDefault_defaultSetToPkg_shouldReturnTrue() {
+        final String pkgName = "test.pkg";
+        final ComponentName defaultHome = new ComponentName(pkgName, "class");
+
+        when(mPackageManager.getHomeActivities(anyList())).thenReturn(defaultHome);
+
+        assertThat(DefaultHomePreferenceController.isHomeDefault(pkgName, mPackageManager))
+                .isTrue();
+    }
+
+    @Test
+    public void testIsHomeDefault_defaultSetToOtherPkg_shouldReturnFalse() {
+        final String pkgName = "test.pkg";
+        final ComponentName defaultHome = new ComponentName("not" + pkgName, "class");
+
+        when(mPackageManager.getHomeActivities(anyList())).thenReturn(defaultHome);
+
+        assertThat(DefaultHomePreferenceController.isHomeDefault(pkgName, mPackageManager))
+                .isFalse();
+    }
 }