blob: 468cdd62f15047b9de7f08678442e11c48de9aca [file] [log] [blame]
// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/ui/global_media_controls/test_helper.h"
#include <memory>
#include <string>
#include "content/public/browser/presentation_observer.h"
#include "testing/gmock/include/gmock/gmock.h"
MockWebContentsPresentationManager::MockWebContentsPresentationManager() =
default;
MockWebContentsPresentationManager::~MockWebContentsPresentationManager() =
default;
bool MockWebContentsPresentationManager::HasDefaultPresentationRequest() const {
return default_presentation_request_.has_value();
}
const content::PresentationRequest&
MockWebContentsPresentationManager::GetDefaultPresentationRequest() const {
return *default_presentation_request_;
}
void MockWebContentsPresentationManager::SetDefaultPresentationRequest(
const content::PresentationRequest& request) {
default_presentation_request_ = request;
}
void MockWebContentsPresentationManager::NotifyMediaRoutesChanged(
const std::vector<media_router::MediaRoute>& routes) {
for (auto& observer : observers_) {
observer.OnPresentationsChanged(!routes.empty());
}
}
void MockWebContentsPresentationManager::AddObserver(
content::PresentationObserver* observer) {
observers_.AddObserver(observer);
}
void MockWebContentsPresentationManager::RemoveObserver(
content::PresentationObserver* observer) {
observers_.RemoveObserver(observer);
}
base::WeakPtr<WebContentsPresentationManager>
MockWebContentsPresentationManager::GetWeakPtr() {
return weak_factory_.GetWeakPtr();
}