| // Copyright 2017 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/file_path.mojom"; |
| import "skia/public/interfaces/bitmap.mojom"; |
| import "ui/gfx/geometry/mojo/geometry.mojom"; |
| import "url/mojom/url.mojom"; |
| |
| struct ShellTestConfiguration { |
| // The current working directory. |
| mojo_base.mojom.FilePath current_working_directory; |
| |
| // The temporary directory of the system. |
| mojo_base.mojom.FilePath temp_path; |
| |
| // The URL of the current web test. |
| url.mojom.Url test_url; |
| |
| // True if tests can open external URLs. |
| bool allow_external_pages; |
| |
| // The expected MD5 hash of the pixel results. |
| string expected_pixel_hash; |
| |
| // The initial size of the test window. |
| gfx.mojom.Size initial_size; |
| |
| // Whether the test is running in protocol mode. |
| // See TestInfo::protocol_mode in browser/web_test/test_info_extractor.h. |
| bool protocol_mode; |
| }; |
| |
| // Results of a CaptureDump call. |
| struct WebTestDump { |
| // Audio dump. |
| array<uint8>? audio; |
| |
| // Layout dump. |
| string? layout; |
| |
| // Image dump. |
| skia.mojom.Bitmap? pixels; |
| string actual_pixel_hash; |
| |
| // Selection rect dump. |
| gfx.mojom.Rect selection_rect; |
| }; |
| |
| interface WebTestControl { |
| CaptureDump() => (WebTestDump result); |
| |
| CompositeWithRaster() => (); |
| |
| // Dumps the frame's contents into a string. |
| DumpFrameLayout() => (string frame_layout_dump); |
| |
| // Replicates test config (for an already started test) to a new renderer |
| // that hosts parts of the main test window. |
| ReplicateTestConfiguration(ShellTestConfiguration config); |
| |
| // Sets the test config for a web test that is being started. This message |
| // is sent only to a renderer that hosts parts of the main test window. |
| SetTestConfiguration(ShellTestConfiguration config); |
| |
| // Sets up a secondary renderer (renderer that doesn't [yet] host parts of the |
| // main test window) for a web test. |
| SetupSecondaryRenderer(); |
| }; |