Index: chrome/android/javatests/src/org/chromium/chrome/browser/webapps/AddToHomescreenManagerTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/AddToHomescreenManagerTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/AddToHomescreenManagerTest.java |
index fecac8b7afb1ff4f19b4346c4ff0857485e946c5..21803aa5bf1be270e016e931088976a925d7f4bc 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/AddToHomescreenManagerTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/webapps/AddToHomescreenManagerTest.java |
@@ -23,6 +23,7 @@ import org.chromium.chrome.browser.tab.Tab; |
import org.chromium.chrome.browser.tabmodel.TabModel; |
import org.chromium.chrome.test.ChromeActivityTestCaseBase; |
import org.chromium.chrome.test.util.browser.TabLoadObserver; |
+import org.chromium.chrome.test.util.browser.TabTitleObserver; |
import org.chromium.content.browser.test.util.Criteria; |
import org.chromium.content.browser.test.util.CriteriaHelper; |
import org.chromium.content.common.ContentSwitches; |
@@ -70,6 +71,10 @@ public class AddToHomescreenManagerTest extends ChromeActivityTestCaseBase<Chrom |
private static final String MANIFEST_PATH = "/chrome/test/data/banners/manifest_test_page.html"; |
private static final String MANIFEST_TITLE = "Web app banner test page"; |
+ private static final String EVENT_WEBAPP_PATH = |
+ "/chrome/test/data/banners/appinstalled_test_page.html"; |
+ private static final String EVENT_WEBAPP_TITLE = "appinstalled event test page"; |
+ |
private static class TestShortcutHelperDelegate extends ShortcutHelper.Delegate { |
public Intent mBroadcastedIntent; |
@@ -279,6 +284,23 @@ public class AddToHomescreenManagerTest extends ChromeActivityTestCaseBase<Chrom |
} |
} |
+ /** Tests that the appinstalled event is fired when an app is installed. |
+ */ |
+ @SmallTest |
+ @Feature("{Webapp}") |
+ public void testAddWebappShortcutAppInstalledEvent() throws Exception { |
+ try { |
+ loadUrl(mTestServer.getURL(EVENT_WEBAPP_PATH), EVENT_WEBAPP_TITLE); |
+ addShortcutToTab(mTab, ""); |
+ |
+ // Wait for the tab title to change. This will happen (due to the JavaScript that runs |
+ // in the page) once the appinstalled event has been fired. |
+ new TabTitleObserver(mTab, "Got appinstalled").waitForTitleUpdate(3); |
+ } finally { |
+ mTestServer.stopAndDestroyServer(); |
+ } |
+ } |
+ |
private void loadUrl(String url, String expectedPageTitle) throws Exception { |
new TabLoadObserver(mTab, expectedPageTitle, null).fullyLoadUrl(url); |
} |