| 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 01aa9621c5c441e54fa60394f037f0b11e232418..c08d31d659cb7b95d98f788998ea1df4bbd64155 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
|
| @@ -24,6 +24,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;
|
| @@ -77,6 +78,10 @@ public class AddToHomescreenManagerTest extends ChromeActivityTestCaseBase<Chrom
|
| + "<link rel=\"manifest\" href=\"../../../../slow?10000\" />"
|
| + "</head></html>");
|
|
|
| + 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;
|
|
|
| @@ -287,6 +292,24 @@ 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 twice: once to test
|
| + // addEventListener('appinstalled'), once to test onappinstalled attribute.
|
| + new TabTitleObserver(mTab, "Got appinstalled 2 times").waitForTitleUpdate(3);
|
| + } finally {
|
| + mTestServer.stopAndDestroyServer();
|
| + }
|
| + }
|
| +
|
| private void loadUrl(String url, String expectedPageTitle) throws Exception {
|
| new TabLoadObserver(mTab, expectedPageTitle, null).fullyLoadUrl(url);
|
| }
|
|
|