Commit 31995334 authored by Becca Hughes's avatar Becca Hughes Committed by Commit Bot

[Media Session] Use url formatter for source title

We should use url formatter for source title now the
overshadowing issue has been fixed as this is the
recommended way for displaying origins in the UI.

BUG=923078

Change-Id: I36d57e38a82295ffd0308a7e8d15260305e10f60
Reviewed-on: https://chromium-review.googlesource.com/c/1432712Reviewed-by: default avatarMounir Lamouri <mlamouri@chromium.org>
Commit-Queue: Becca Hughes <beccahughes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#625801}
parent 0d9177bc
......@@ -11,6 +11,7 @@
#include "base/stl_util.h"
#include "base/strings/string_util.h"
#include "build/build_config.h"
#include "components/url_formatter/elide_url.h"
#include "content/browser/media/session/audio_focus_delegate.h"
#include "content/browser/media/session/media_session_controller.h"
#include "content/browser/media/session/media_session_player_observer.h"
......@@ -935,8 +936,8 @@ media_session::MediaMetadata MediaSessionImpl::GetMediaMetadata() const {
? *routed_service_->metadata()
: media_session::MediaMetadata();
metadata.source_title = base::ASCIIToUTF16(
web_contents()->GetLastCommittedURL().GetOrigin().host());
metadata.source_title = url_formatter::FormatOriginForSecurityDisplay(
url::Origin::Create(web_contents()->GetLastCommittedURL()));
return metadata;
}
......
......@@ -12,6 +12,7 @@
#include "base/macros.h"
#include "base/memory/ptr_util.h"
#include "base/metrics/histogram_samples.h"
#include "base/strings/strcat.h"
#include "base/strings/utf_string_conversions.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/simple_test_tick_clock.h"
......@@ -22,8 +23,10 @@
#include "content/public/browser/media_session.h"
#include "content/public/browser/web_contents.h"
#include "content/public/test/content_browser_test.h"
#include "content/public/test/content_browser_test_utils.h"
#include "content/shell/browser/shell.h"
#include "media/base/media_content_type.h"
#include "net/dns/mock_host_resolver.h"
#include "services/media_session/public/cpp/test/mock_media_session.h"
#include "services/media_session/public/mojom/audio_focus.mojom.h"
#include "testing/gmock/include/gmock/gmock.h"
......@@ -50,6 +53,9 @@ const double kDefaultVolumeMultiplier = 1.0;
const double kDuckingVolumeMultiplier = 0.2;
const double kDifferentDuckingVolumeMultiplier = 0.018;
const base::string16 kExpectedSourceTitlePrefix =
base::ASCIIToUTF16("http://example.com:");
class MockAudioFocusDelegate : public AudioFocusDelegate {
public:
MockAudioFocusDelegate(MediaSessionImpl* media_session, bool async_mode)
......@@ -105,6 +111,12 @@ class MediaSessionImplBrowserTest : public content::ContentBrowserTest {
void SetUpOnMainThread() override {
ContentBrowserTest::SetUpOnMainThread();
// Navigate to a test page with a a real origin.
ASSERT_TRUE(embedded_test_server()->Start());
host_resolver()->AddRule("*", "127.0.0.1");
NavigateToURL(
shell(), embedded_test_server()->GetURL("example.com", "/title1.html"));
media_session_ = MediaSessionImpl::Get(shell()->web_contents());
mock_media_session_observer_.reset(
new NiceMock<content::MockMediaSessionObserver>(media_session_));
......@@ -236,8 +248,9 @@ class MediaSessionImplBrowserTest : public content::ContentBrowserTest {
bool IsDucking() const { return media_session_->is_ducking_; }
base::string16 GetExpectedSourceTitle() {
return base::ASCIIToUTF16(
shell()->web_contents()->GetLastCommittedURL().GetOrigin().host());
return base::StrCat(
{kExpectedSourceTitlePrefix,
base::NumberToString16(embedded_test_server()->port())});
}
protected:
......
......@@ -668,10 +668,10 @@ TEST_F(MediaSessionImplServiceRoutingTest,
TEST_F(MediaSessionImplServiceRoutingTest, NotifyMojoObserverOnNavigation) {
media_session::test::MockMediaSessionMojoObserver observer(
*GetMediaSession());
contents()->NavigateAndCommit(GURL("http://www.google.com"));
contents()->NavigateAndCommit(GURL("http://www.google.com/test"));
media_session::MediaMetadata expected_metadata;
expected_metadata.source_title = base::ASCIIToUTF16("www.google.com");
expected_metadata.source_title = base::ASCIIToUTF16("http://www.google.com");
EXPECT_EQ(expected_metadata, observer.WaitForNonEmptyMetadata());
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment