summaryrefslogtreecommitdiff
path: root/chromium/content/shell/common
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/content/shell/common')
-rw-r--r--chromium/content/shell/common/shell_controller.test-mojom27
-rw-r--r--chromium/content/shell/common/web_test/web_test.mojom12
2 files changed, 36 insertions, 3 deletions
diff --git a/chromium/content/shell/common/shell_controller.test-mojom b/chromium/content/shell/common/shell_controller.test-mojom
new file mode 100644
index 00000000000..cf17bb82ee7
--- /dev/null
+++ b/chromium/content/shell/common/shell_controller.test-mojom
@@ -0,0 +1,27 @@
+// Copyright 2020 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+module content.mojom;
+
+import "mojo/public/mojom/base/string16.mojom";
+import "mojo/public/mojom/base/values.mojom";
+
+// A control interface which can be accessed by clients launching Content Shell
+// with a Mojo invitation on the command line. This is used by
+// LaunchAsMojoClientBrowserTest to exercise that mode of execution.
+interface ShellController {
+ // Requests the (ASCII) value of a command line argument present in the
+ // running Content Shell process which receives this message.
+ GetSwitchValue(string name) => (string? value);
+
+ // Asks the shell to execute the JavaScript code in |script| within the first
+ // available window, and returns the resulting value.
+ ExecuteJavaScript(mojo_base.mojom.String16 script)
+ => (mojo_base.mojom.Value value);
+
+ // Tells Content Shell to close all windows and shut down. After sending this
+ // message, the Content Shell browser process should be expected to terminate
+ // soon.
+ ShutDown();
+};
diff --git a/chromium/content/shell/common/web_test/web_test.mojom b/chromium/content/shell/common/web_test/web_test.mojom
index 6193f47dbaf..dedbfad90b4 100644
--- a/chromium/content/shell/common/web_test/web_test.mojom
+++ b/chromium/content/shell/common/web_test/web_test.mojom
@@ -66,7 +66,7 @@ interface WebTestRenderFrame {
// Performs the complete set of document lifecycle phases, including updates
// to the compositor state and rasterization, then calling the given callback.
- CompositeWithRaster() => ();
+ SynchronouslyCompositeAfterTest() => ();
// Dumps the frame's contents into a string.
DumpFrameLayout() => (string frame_layout_dump);
@@ -143,8 +143,14 @@ interface WebTestControlHost {
// Trigger a reload navigation on the main WebView.
Reload();
- // Invoked when the embedder should close all but the main WebView.
- CloseRemainingWindows();
+ // If the test will be closing its windows explicitly, and wants to look for
+ // leaks due to those windows closing incorrectly, it can specify this to
+ // avoid having them closed at the end of the test before the leak checker.
+ CheckForLeakedWindows();
+
+ // Show or hide the window. This mimics the user switching tabs in a
+ // multi-tab window, or occluding the window.
+ SetMainWindowHidden(bool hidden);
// Trigger a GoToOffset navigation on the main WebView.
GoToOffset(int32 offset);