#include "chrome/browser/picture_in_picture/picture_in_picture_window_manager.h"
#include <memory>
#include "base/scoped_observation.h"
#include "chrome/test/base/chrome_render_view_host_test_harness.h"
#include "content/public/browser/picture_in_picture_window_controller.h"
#include "content/public/browser/web_contents.h"
#include "content/public/test/mock_video_picture_in_picture_window_controller_impl.h"
#include "extensions/buildflags/buildflags.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/display/display.h"
#if !BUILDFLAG(IS_ANDROID)
#include "base/test/metrics/histogram_tester.h"
#include "chrome/browser/picture_in_picture/auto_picture_in_picture_tab_helper.h"
#include "ui/views/bubble/bubble_dialog_delegate_view.h"
#include "ui/views/view.h"
#endif
namespace {
PictureInPictureWindowManagerdObservation;
class MockPictureInPictureWindowManagerObserver
: public PictureInPictureWindowManager::Observer { … };
class MockPictureInPictureWindowController
: public content::PictureInPictureWindowController { … };
class PictureInPictureWindowManagerTest
: public ChromeRenderViewHostTestHarness { … };
}
TEST_F(PictureInPictureWindowManagerTest, RespectsMinAndMaxSize) { … }
TEST_F(PictureInPictureWindowManagerTest,
ExitPictureInPictureReturnsFalseWhenThereIsNoWindow) { … }
TEST_F(PictureInPictureWindowManagerTest,
ExitPictureInPictureReturnsTrueAndClosesWindow) { … }
TEST_F(PictureInPictureWindowManagerTest, OnEnterVideoPictureInPicture) { … }
#if !BUILDFLAG(IS_ANDROID)
TEST_F(PictureInPictureWindowManagerTest, OnEnterDocumentPictureInPicture) { … }
TEST_F(PictureInPictureWindowManagerTest, DontShowAutoPipSettingUiWithoutPip) { … }
TEST_F(PictureInPictureWindowManagerTest,
DontShowAutoPipSettingUiForNonAutoPip) { … }
TEST_F(PictureInPictureWindowManagerTest, CorrectTypesAreSupported) { … }
TEST_F(PictureInPictureWindowManagerTest, RecordsInitialSizeHistograms) { … }
#endif