#include "base/run_loop.h"
#include "build/build_config.h"
#include "chrome/browser/extensions/api/permissions/permissions_api.h"
#include "chrome/browser/extensions/extension_apitest.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_tabstrip.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/test/base/ui_test_utils.h"
#include "components/embedder_support/switches.h"
#include "components/sessions/content/session_tab_helper.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/render_view_host.h"
#include "content/public/common/content_features.h"
#include "content/public/test/browser_test.h"
#include "content/public/test/browser_test_utils.h"
#include "content/public/test/test_navigation_observer.h"
#include "extensions/browser/event_router.h"
#include "extensions/browser/extension_host.h"
#include "extensions/browser/process_manager.h"
#include "extensions/test/extension_test_message_listener.h"
#include "extensions/test/result_catcher.h"
#include "extensions/test/test_extension_dir.h"
#include "net/dns/mock_host_resolver.h"
#include "net/test/embedded_test_server/embedded_test_server.h"
#include "third_party/blink/public/common/input/web_mouse_event.h"
#include "third_party/blink/public/common/switches.h"
namespace extensions {
namespace {
void MouseDownInWebContents(content::WebContents* web_contents) { … }
void MouseUpInWebContents(content::WebContents* web_contents) { … }
class ExtensionBindingsApiTest : public ExtensionApiTest { … };
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
UnavailableBindingsNeverRegistered) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
ExceptionInHandlerShouldNotCrash) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, LastError) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, AboutBlankIframe) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
InternalAPIsNotOnChromeObject) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, DISABLED_EventOverriding) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, Nocompile) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, ApiEnums) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, ModuleSystem) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, NoExportOverriding) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, NoGinDefineOverriding) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, HandlerFunctionTypeChecking) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
MoreNativeFunctionInterceptionTests) { … }
class FramesExtensionBindingsApiTest : public ExtensionBindingsApiTest { … };
IN_PROC_BROWSER_TEST_F(FramesExtensionBindingsApiTest, FramesBeforeNavigation) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, TestFreezingChrome) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, TestEventFilterParsing) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, ValidationInterception) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, UncaughtExceptionLogging) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
ExtensionSubframeGetsBindings) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
ExtensionListenersRemoveContext) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, UseAPIsAfterContextRemoval) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
InvalidateContextInCallbackWithLastError) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest, UseAppAPIAfterFrameRemoval) { … }
IN_PROC_BROWSER_TEST_F(
ExtensionBindingsApiTest,
MultipleEventListenersFromDifferentContextsAndTheSameExtension) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
UserGestureFromExtensionMessageTest) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
UserGestureInExtensionAPICallback) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
WebUserGestureAfterMessagingCallback) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
WebUserGestureAfterApiCallback) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
UserGestureFromMessageWontOverrideActiveGesture) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
TestBindingsAvailableWithNavigatedBlankWindow) { … }
IN_PROC_BROWSER_TEST_F(ExtensionBindingsApiTest,
ChromeExtensionIsAliasedToChromeRuntime) { … }
}
}