Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(756)

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationTitleUpdatedTest.java

Issue 2720073002: Fix a notification update issue when navigating to a different URL in the same origin (Closed)
Patch Set: fixed the URL and in-page navigation in tests Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationActionsUpdatedTest.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationTitleUpdatedTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationTitleUpdatedTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationTitleUpdatedTest.java
index c49a01f85cd46a78358ccdb95cee6ce7325e2df9..2c72fb9c7233e406189528debfa1cd5a586cfbef 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationTitleUpdatedTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationTitleUpdatedTest.java
@@ -24,6 +24,7 @@ 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.browser.test.util.JavaScriptUtils;
+import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.content_public.browser.MediaSession;
import org.chromium.content_public.browser.MediaSessionObserver;
import org.chromium.content_public.common.MediaMetadata;
@@ -36,7 +37,8 @@ import org.chromium.net.test.EmbeddedTestServer;
@RetryOnFailure
public class NotificationTitleUpdatedTest extends ChromeActivityTestCaseBase<ChromeActivity> {
private static final int NOTIFICATION_ID = R.id.media_playback_notification;
- private static final String SIMPLE_PAGE_URL = "/simple_page.html";
+ private static final String SIMPLE_PAGE_URL_1 = "/content/test/data/title1.html";
+ private static final String SIMPLE_PAGE_URL_2 = "/content/test/data/title2.html";
private Tab mTab;
private EmbeddedTestServer mTestServer;
@@ -163,14 +165,27 @@ public class NotificationTitleUpdatedTest extends ChromeActivityTestCaseBase<Chr
}
@SmallTest
+ public void testMediaMetadataResetsAfterSameOriginNavigation() throws Throwable {
+ ensureTestServer();
+ loadUrl(mTestServer.getURL(SIMPLE_PAGE_URL_1));
+ simulateMediaSessionStateChanged(mTab, true, false);
+ simulateMediaSessionMetadataChanged(mTab, new MediaMetadata("title2", "", ""));
+ assertTitleMatches("title2");
+
+ loadUrl(mTestServer.getURL(SIMPLE_PAGE_URL_2));
+ simulateUpdateTitle(mTab, "title3");
+ assertTitleMatches("title3");
+ }
+
+ @SmallTest
public void testMediaMetadataPersistsAfterInPageNavigation() throws Throwable {
ensureTestServer();
- loadUrl(mTestServer.getURL(SIMPLE_PAGE_URL));
+ loadUrl(mTestServer.getURL(SIMPLE_PAGE_URL_1));
simulateMediaSessionStateChanged(mTab, true, false);
simulateMediaSessionMetadataChanged(mTab, new MediaMetadata("title2", "", ""));
assertTitleMatches("title2");
- loadUrl(mTestServer.getURL(SIMPLE_PAGE_URL + "#some-anchor"));
+ simulateInPageNavigation(mTab, mTestServer.getURL(SIMPLE_PAGE_URL_1));
assertTitleMatches("title2");
}
@@ -254,6 +269,16 @@ public class NotificationTitleUpdatedTest extends ChromeActivityTestCaseBase<Chr
});
}
+ private void simulateInPageNavigation(final Tab tab, final String url) {
+ ThreadUtils.runOnUiThreadBlocking(new Runnable() {
+ @Override
+ public void run() {
+ tab.loadUrl(new LoadUrlParams(url + "#some-anchor"));
+ }
+ });
+ getInstrumentation().waitForIdleSync();
+ }
+
private void ensureTestServer() {
try {
mTestServer = EmbeddedTestServer.createAndStartServer(
« no previous file with comments | « chrome/android/javatests/src/org/chromium/chrome/browser/media/ui/NotificationActionsUpdatedTest.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698