diff --git a/tests/tests/content/src/android/content/pm/cts/PackageManagerTest.java b/tests/tests/content/src/android/content/pm/cts/PackageManagerTest.java
index 813e6601..f258997 100644
--- a/tests/tests/content/src/android/content/pm/cts/PackageManagerTest.java
+++ b/tests/tests/content/src/android/content/pm/cts/PackageManagerTest.java
@@ -655,25 +655,8 @@
         int pkgInfoSize = pkgInfo.size();
         mPackageManager.addPackageToPreferred(CONTENT_PKG_NAME);
         pkgInfo = mPackageManager.getPreferredPackages(0);
-        assertTrue(pkgInfo.size() == 1 + pkgInfoSize);
-        checkPreferredPackagesName(CONTENT_PKG_NAME, pkgInfo);
-        // Test removePackageFromPreferred
-        mPackageManager.removePackageFromPreferred(CONTENT_PKG_NAME);
-        assertTrue(mPackageManager.getPreferredPackages(0).size() == 0);
-    }
-
-    private void checkPreferredPackagesName(String expectedName, List<PackageInfo> pkgs) {
-        boolean isContained = false;
-        Iterator<PackageInfo> infoIterator = pkgs.iterator();
-        String current;
-        while (infoIterator.hasNext()) {
-            current = infoIterator.next().packageName;
-            if (current.equals(expectedName)) {
-                isContained = true;
-                break;
-            }
-        }
-        assertTrue(isContained);
+        // addPackageToPreferred should have no effect
+        assertEquals(pkgInfo.size(), pkgInfoSize);
     }
 
     @TestTargets({
diff --git a/tests/tests/example/Android.mk b/tests/tests/example/Android.mk
index 517931b..d32f59b 100644
--- a/tests/tests/example/Android.mk
+++ b/tests/tests/example/Android.mk
@@ -16,8 +16,8 @@
 
 include $(CLEAR_VARS)
 
-LOCAL_PACKAGE_NAME := CtsExampleTestCases # Replace "Example" with your name.
-
+# Replace "Example" with your name.
+LOCAL_PACKAGE_NAME := CtsExampleTestCases
 
 # Don't include this package in any target.
 LOCAL_MODULE_TAGS := optional
