Merge \\"Always trigger a write if no pages are written\\" into nyc-mr1-dev am: 965a706282

am: 0c1814a153

Change-Id: I7d7021e4ff9074bf60c22caa2b897245fe8a5f4b
This commit is contained in:
Philip P. Moltmann
2016-07-14 19:50:15 +00:00
committed by android-build-merger
2 changed files with 32 additions and 2 deletions

View File

@@ -1444,6 +1444,10 @@ public class ShortcutService extends IShortcutService.Stub {
shortcut.getPackage().equals(shortcut.getActivity().getPackageName()),
"Cannot publish shortcut: activity " + shortcut.getActivity() + " does not"
+ " belong to package " + shortcut.getPackage());
Preconditions.checkState(
injectIsMainActivity(shortcut.getActivity(), shortcut.getUserId()),
"Cannot publish shortcut: activity " + shortcut.getActivity() + " is not"
+ " main activity");
}
if (!forUpdate) {

View File

@@ -130,7 +130,6 @@ public class ShortcutManagerTest2 extends BaseShortcutManagerTest {
assertExpectException(NullPointerException.class, "action must be set",
() -> new ShortcutInfo.Builder(getTestContext(), "id").setIntent(new Intent()));
// same for add.
assertExpectException(
IllegalArgumentException.class, "Short label must be provided", () -> {
ShortcutInfo si = new ShortcutInfo.Builder(getTestContext(), "id")
@@ -139,6 +138,7 @@ public class ShortcutManagerTest2 extends BaseShortcutManagerTest {
assertTrue(getManager().setDynamicShortcuts(list(si)));
});
// same for add.
assertExpectException(
IllegalArgumentException.class, "Short label must be provided", () -> {
ShortcutInfo si = new ShortcutInfo.Builder(getTestContext(), "id")
@@ -147,7 +147,6 @@ public class ShortcutManagerTest2 extends BaseShortcutManagerTest {
assertTrue(getManager().addDynamicShortcuts(list(si)));
});
// same for add.
assertExpectException(NullPointerException.class, "Intent must be provided", () -> {
ShortcutInfo si = new ShortcutInfo.Builder(getTestContext(), "id")
.setActivity(new ComponentName(getTestContext().getPackageName(), "s"))
@@ -181,6 +180,33 @@ public class ShortcutManagerTest2 extends BaseShortcutManagerTest {
.build();
assertTrue(getManager().addDynamicShortcuts(list(si)));
});
// Now all activities are not main.
mMainActivityChecker = (component, userId) -> false;
assertExpectException(
IllegalStateException.class, "is not main", () -> {
ShortcutInfo si = new ShortcutInfo.Builder(getTestContext(), "id")
.setActivity(new ComponentName(getTestContext(), "s"))
.build();
assertTrue(getManager().setDynamicShortcuts(list(si)));
});
// For add
assertExpectException(
IllegalStateException.class, "is not main", () -> {
ShortcutInfo si = new ShortcutInfo.Builder(getTestContext(), "id")
.setActivity(new ComponentName(getTestContext(), "s"))
.build();
assertTrue(getManager().addDynamicShortcuts(list(si)));
});
// For update
assertExpectException(
IllegalStateException.class, "is not main", () -> {
ShortcutInfo si = new ShortcutInfo.Builder(getTestContext(), "id")
.setActivity(new ComponentName(getTestContext(), "s"))
.build();
assertTrue(getManager().updateShortcuts(list(si)));
});
}
public void testShortcutInfoParcel() {