OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 package org.chromium.chrome.browser; | 5 package org.chromium.chrome.browser; |
6 | 6 |
7 import android.content.Intent; | 7 import android.content.Intent; |
8 import android.test.FlakyTest; | 8 import android.test.FlakyTest; |
9 | 9 |
10 import org.chromium.base.test.util.UrlUtils; | 10 import org.chromium.base.test.util.UrlUtils; |
(...skipping 24 matching lines...) Expand all Loading... | |
35 + "<meta name=\"mobile-web-app-capable\" content=\"yes\" />" | 35 + "<meta name=\"mobile-web-app-capable\" content=\"yes\" />" |
36 + "<title>" + SECOND_WEBAPP_TITLE + "</title>" | 36 + "<title>" + SECOND_WEBAPP_TITLE + "</title>" |
37 + "</head><body>Webapp capable again</body></html>"); | 37 + "</head><body>Webapp capable again</body></html>"); |
38 | 38 |
39 private static final String NORMAL_TITLE = "Plain shortcut"; | 39 private static final String NORMAL_TITLE = "Plain shortcut"; |
40 private static final String NORMAL_HTML = UrlUtils.encodeHtmlDataUri( | 40 private static final String NORMAL_HTML = UrlUtils.encodeHtmlDataUri( |
41 "<html>" | 41 "<html>" |
42 + "<head><title>" + NORMAL_TITLE + "</title></head>" | 42 + "<head><title>" + NORMAL_TITLE + "</title></head>" |
43 + "<body>Not Webapp capable</body></html>"); | 43 + "<body>Not Webapp capable</body></html>"); |
44 | 44 |
45 private static final String META_APP_NAME_TITLE = "Web application-name"; | |
46 private static final String META_APP_NAME_HTML = UrlUtils.encodeHtmlDataUri( | |
47 "<html><head>" | |
48 + "<meta name=\"mobile-web-app-capable\" content=\"yes\" />" | |
49 + "<meta name=\"application-name\" content=\"" + META_APP_NAME_TITLE + "\">" | |
50 + "<title>Not the right title</title>" | |
51 + "</head><body>Webapp capable</body></html>"); | |
52 | |
45 private static class TestObserver implements ChromeShellApplicationObserver { | 53 private static class TestObserver implements ChromeShellApplicationObserver { |
46 Intent mFiredIntent; | 54 Intent mFiredIntent; |
47 | 55 |
48 @Override | 56 @Override |
49 public boolean onSendBroadcast(Intent intent) { | 57 public boolean onSendBroadcast(Intent intent) { |
50 if (intent.hasExtra(Intent.EXTRA_SHORTCUT_NAME)) { | 58 if (intent.hasExtra(Intent.EXTRA_SHORTCUT_NAME)) { |
51 // Stop a shortcut from really being added. | 59 // Stop a shortcut from really being added. |
52 mFiredIntent = intent; | 60 mFiredIntent = intent; |
53 return false; | 61 return false; |
54 } | 62 } |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
146 * crbug.com/303486 | 154 * crbug.com/303486 |
147 */ | 155 */ |
148 @FlakyTest | 156 @FlakyTest |
149 public void testAddWebappShortcutsWithTitleEdit() throws InterruptedExceptio n { | 157 public void testAddWebappShortcutsWithTitleEdit() throws InterruptedExceptio n { |
150 // Add a webapp shortcut to check edited title. | 158 // Add a webapp shortcut to check edited title. |
151 addShortcutToURL(WEBAPP_HTML, EDITED_WEBAPP_TITLE); | 159 addShortcutToURL(WEBAPP_HTML, EDITED_WEBAPP_TITLE); |
152 Intent firedIntent = mTestObserver.mFiredIntent; | 160 Intent firedIntent = mTestObserver.mFiredIntent; |
153 assertEquals(EDITED_WEBAPP_TITLE , firedIntent.getStringExtra(Intent.EXT RA_SHORTCUT_NAME)); | 161 assertEquals(EDITED_WEBAPP_TITLE , firedIntent.getStringExtra(Intent.EXT RA_SHORTCUT_NAME)); |
154 } | 162 } |
155 | 163 |
164 /** | |
165 * @MediumTest | |
166 * @Feature("{Webapp}") | |
167 * crbug.com/303486 | |
168 */ | |
169 @FlakyTest | |
gone
2014/09/15 16:55:17
Seems weird to immediately add a FlakyTest notatio
mlamouri (slow - plz ping)
2014/09/15 20:30:53
I don't think there is a reason to expect that one
| |
170 public void testAddWebappShortcutsWithApplicationName() throws InterruptedEx ception { | |
171 // Add a webapp shortcut to check edited title. | |
172 addShortcutToURL(META_APP_NAME_HTML, ""); | |
173 Intent firedIntent = mTestObserver.mFiredIntent; | |
174 assertEquals(META_APP_NAME_TITLE , firedIntent.getStringExtra(Intent.EXT RA_SHORTCUT_NAME)); | |
175 } | |
176 | |
156 private void addShortcutToURL(String url, final String title) throws Interru ptedException { | 177 private void addShortcutToURL(String url, final String title) throws Interru ptedException { |
157 loadUrlWithSanitization(url); | 178 loadUrlWithSanitization(url); |
158 assertTrue(waitForActiveShellToBeDoneLoading()); | 179 assertTrue(waitForActiveShellToBeDoneLoading()); |
159 | 180 |
160 // Add the shortcut. | 181 // Add the shortcut. |
161 getInstrumentation().runOnMainSync(new Runnable() { | 182 getInstrumentation().runOnMainSync(new Runnable() { |
162 @Override | 183 @Override |
163 public void run() { | 184 public void run() { |
164 final ShortcutHelper shortcutHelper = new ShortcutHelper( | 185 final ShortcutHelper shortcutHelper = new ShortcutHelper( |
165 mActivity.getApplicationContext(), mActivity.getActiveTa b()); | 186 mActivity.getApplicationContext(), mActivity.getActiveTa b()); |
(...skipping 10 matching lines...) Expand all Loading... | |
176 | 197 |
177 // Make sure that the shortcut was added. | 198 // Make sure that the shortcut was added. |
178 assertTrue(CriteriaHelper.pollForCriteria(new Criteria() { | 199 assertTrue(CriteriaHelper.pollForCriteria(new Criteria() { |
179 @Override | 200 @Override |
180 public boolean isSatisfied() { | 201 public boolean isSatisfied() { |
181 return mTestObserver.mFiredIntent != null; | 202 return mTestObserver.mFiredIntent != null; |
182 } | 203 } |
183 })); | 204 })); |
184 } | 205 } |
185 } | 206 } |
OLD | NEW |