Remove GFX and Scenic dependencies from Fuchsia integration tests (#44498)
This change removes GFX and Scenic dependencies from Fuchsia integration
tests. Mainly, it:
- swaps out `fuchsia.ui.scenic.Scenic/GetDisplayInfo` for
`fuchsia.ui.display.singleton.Info/GetMetrics`
- removes the no longer necessary `fuchsia.ui.scenic.Scenic` connections
and component manifest declarations from tests
- removes any extraneous build deps tests have on `fuchsia.ui.gfx`,
`fuchsia.ui.policy`, and `scenic_cpp`
Related bug: fxbug.dev/64206
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I added new tests to check the change I am making or feature I am
adding, or Hixie said the PR is test-exempt. See [testing the engine]
for instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.
diff --git a/shell/platform/fuchsia/flutter/tests/integration/embedder/BUILD.gn b/shell/platform/fuchsia/flutter/tests/integration/embedder/BUILD.gn
index 9b60781..6b2dd7e 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/embedder/BUILD.gn
+++ b/shell/platform/fuchsia/flutter/tests/integration/embedder/BUILD.gn
@@ -29,13 +29,11 @@
"$fuchsia_sdk_root/fidl:fuchsia.ui.composition",
"$fuchsia_sdk_root/fidl:fuchsia.ui.display.singleton",
"$fuchsia_sdk_root/fidl:fuchsia.ui.observation.geometry",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.scenic",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.scene",
"$fuchsia_sdk_root/pkg:async",
"$fuchsia_sdk_root/pkg:async-loop-testing",
"$fuchsia_sdk_root/pkg:fidl_cpp",
- "$fuchsia_sdk_root/pkg:scenic_cpp",
"$fuchsia_sdk_root/pkg:sys_component_cpp_testing",
"$fuchsia_sdk_root/pkg:zx",
"//flutter/fml",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/BUILD.gn b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/BUILD.gn
index c26b44b..661d374 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/BUILD.gn
+++ b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/BUILD.gn
@@ -33,21 +33,18 @@
"$fuchsia_sdk_root/fidl:fuchsia.net.interfaces",
"$fuchsia_sdk_root/fidl:fuchsia.tracing.provider",
"$fuchsia_sdk_root/fidl:fuchsia.ui.app",
+ "$fuchsia_sdk_root/fidl:fuchsia.ui.display.singleton",
"$fuchsia_sdk_root/fidl:fuchsia.ui.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.pointerinjector",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.policy",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.scenic",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.scene",
"$fuchsia_sdk_root/fidl:fuchsia.web",
"$fuchsia_sdk_root/pkg:async",
"$fuchsia_sdk_root/pkg:async-loop-testing",
"$fuchsia_sdk_root/pkg:fidl_cpp",
- "$fuchsia_sdk_root/pkg:scenic_cpp",
"$fuchsia_sdk_root/pkg:sys_component_cpp_testing",
"$fuchsia_sdk_root/pkg:zx",
"mouse-input-view:package",
- "//build/fuchsia/fidl:fuchsia.ui.gfx",
"//flutter/fml",
"//flutter/shell/platform/fuchsia/flutter/tests/integration/utils:portable_ui_test",
"//third_party/googletest:gtest",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/meta/mouse-input-test.cml b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/meta/mouse-input-test.cml
index 0c4de88..b77da92 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/meta/mouse-input-test.cml
+++ b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/meta/mouse-input-test.cml
@@ -33,7 +33,6 @@
"fuchsia.tracing.provider.Registry",
"fuchsia.ui.input.ImeService",
"fuchsia.vulkan.loader.Loader",
- "fuchsia.ui.scenic.Scenic",
"fuchsia.ui.composition.Allocator",
"fuchsia.ui.composition.Flatland",
"fuchsia.ui.test.input.MouseInputListener",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-test.cc b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-test.cc
index 170bd0c..94f3909 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-test.cc
+++ b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-test.cc
@@ -15,8 +15,8 @@
#include <fuchsia/sys/cpp/fidl.h>
#include <fuchsia/tracing/provider/cpp/fidl.h>
#include <fuchsia/ui/app/cpp/fidl.h>
+#include <fuchsia/ui/display/singleton/cpp/fidl.h>
#include <fuchsia/ui/input/cpp/fidl.h>
-#include <fuchsia/ui/scenic/cpp/fidl.h>
#include <fuchsia/ui/test/input/cpp/fidl.h>
#include <fuchsia/web/cpp/fidl.h>
#include <lib/async/cpp/task.h>
@@ -170,14 +170,19 @@
RegisterMouse();
// Get the display dimensions.
- FML_LOG(INFO) << "Waiting for scenic display info";
- scenic_ = realm_root()->component().Connect<fuchsia::ui::scenic::Scenic>();
- scenic_->GetDisplayInfo([this](fuchsia::ui::gfx::DisplayInfo display_info) {
- display_width_ = display_info.width_in_px;
- display_height_ = display_info.height_in_px;
- FML_LOG(INFO) << "Got display_width = " << display_width_
- << " and display_height = " << display_height_;
- });
+ FML_LOG(INFO)
+ << "Waiting for display info from fuchsia.ui.display.singleton.Info";
+ fuchsia::ui::display::singleton::InfoPtr display_info =
+ realm_root()
+ ->component()
+ .Connect<fuchsia::ui::display::singleton::Info>();
+ display_info->GetMetrics(
+ [this](fuchsia::ui::display::singleton::Metrics metrics) {
+ display_width_ = metrics.extent_in_px().width;
+ display_height_ = metrics.extent_in_px().height;
+ FML_LOG(INFO) << "Got display_width = " << display_width_
+ << " and display_height = " << display_height_;
+ });
RunLoopUntil(
[this] { return display_width_ != 0 && display_height_ != 0; });
}
@@ -284,7 +289,6 @@
MouseInputListenerServer* mouse_input_listener_;
- fuchsia::ui::scenic::ScenicPtr scenic_;
uint32_t display_width_ = 0;
uint32_t display_height_ = 0;
};
diff --git a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-view/meta/mouse-input-view.cml b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-view/meta/mouse-input-view.cml
index 38d2364..fecafe2 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-view/meta/mouse-input-view.cml
+++ b/shell/platform/fuchsia/flutter/tests/integration/mouse-input/mouse-input-view/meta/mouse-input-view.cml
@@ -26,7 +26,6 @@
protocol: [
"fuchsia.sysmem.Allocator",
"fuchsia.tracing.provider.Registry",
- "fuchsia.ui.scenic.Scenic",
"fuchsia.ui.composition.Flatland",
"fuchsia.ui.test.input.MouseInputListener",
"fuchsia.vulkan.loader.Loader",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/text-input/BUILD.gn b/shell/platform/fuchsia/flutter/tests/integration/text-input/BUILD.gn
index 266cb8c..41bcd16 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/text-input/BUILD.gn
+++ b/shell/platform/fuchsia/flutter/tests/integration/text-input/BUILD.gn
@@ -28,20 +28,17 @@
"$fuchsia_sdk_root/fidl:fuchsia.kernel",
"$fuchsia_sdk_root/fidl:fuchsia.tracing.provider",
"$fuchsia_sdk_root/fidl:fuchsia.ui.app",
+ "$fuchsia_sdk_root/fidl:fuchsia.ui.display.singleton",
"$fuchsia_sdk_root/fidl:fuchsia.ui.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.pointerinjector",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.policy",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.scenic",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.scene",
"$fuchsia_sdk_root/pkg:async",
"$fuchsia_sdk_root/pkg:async-loop-testing",
"$fuchsia_sdk_root/pkg:fidl_cpp",
- "$fuchsia_sdk_root/pkg:scenic_cpp",
"$fuchsia_sdk_root/pkg:sys_component_cpp_testing",
"$fuchsia_sdk_root/pkg:zx",
"text-input-view:package",
- "//build/fuchsia/fidl:fuchsia.ui.gfx",
"//flutter/fml",
"//flutter/shell/platform/fuchsia/flutter/tests/integration/utils:check_view",
"//flutter/shell/platform/fuchsia/flutter/tests/integration/utils:portable_ui_test",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/text-input/meta/text-input-test.cml b/shell/platform/fuchsia/flutter/tests/integration/text-input/meta/text-input-test.cml
index b86b0f5..b957f14 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/text-input/meta/text-input-test.cml
+++ b/shell/platform/fuchsia/flutter/tests/integration/text-input/meta/text-input-test.cml
@@ -32,7 +32,6 @@
"fuchsia.tracing.provider.Registry",
"fuchsia.ui.input.ImeService",
"fuchsia.vulkan.loader.Loader",
- "fuchsia.ui.scenic.Scenic",
"fuchsia.ui.test.input.KeyboardInputListener",
"fuchsia.ui.input3.Keyboard",
"fuchsia.intl.PropertyProvider",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/text-input/text-input-test.cc b/shell/platform/fuchsia/flutter/tests/integration/text-input/text-input-test.cc
index d248cc0..95fdb3a 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/text-input/text-input-test.cc
+++ b/shell/platform/fuchsia/flutter/tests/integration/text-input/text-input-test.cc
@@ -8,8 +8,8 @@
#include <fuchsia/sysmem/cpp/fidl.h>
#include <fuchsia/tracing/provider/cpp/fidl.h>
#include <fuchsia/ui/app/cpp/fidl.h>
+#include <fuchsia/ui/display/singleton/cpp/fidl.h>
#include <fuchsia/ui/input/cpp/fidl.h>
-#include <fuchsia/ui/scenic/cpp/fidl.h>
#include <fuchsia/ui/test/input/cpp/fidl.h>
#include <fuchsia/ui/test/scene/cpp/fidl.h>
#include <lib/async-loop/testing/cpp/real_loop.h>
@@ -144,14 +144,19 @@
kTimeout);
// Get the display dimensions.
- FML_LOG(INFO) << "Waiting for scenic display info";
- scenic_ = realm_root()->component().Connect<fuchsia::ui::scenic::Scenic>();
- scenic_->GetDisplayInfo([this](fuchsia::ui::gfx::DisplayInfo display_info) {
- display_width_ = display_info.width_in_px;
- display_height_ = display_info.height_in_px;
- FML_LOG(INFO) << "Got display_width = " << display_width_
- << " and display_height = " << display_height_;
- });
+ FML_LOG(INFO)
+ << "Waiting for display info from fuchsia.ui.display.singleton.Info";
+ fuchsia::ui::display::singleton::InfoPtr display_info =
+ realm_root()
+ ->component()
+ .Connect<fuchsia::ui::display::singleton::Info>();
+ display_info->GetMetrics(
+ [this](fuchsia::ui::display::singleton::Metrics metrics) {
+ display_width_ = metrics.extent_in_px().width;
+ display_height_ = metrics.extent_in_px().height;
+ FML_LOG(INFO) << "Got display_width = " << display_width_
+ << " and display_height = " << display_height_;
+ });
RunLoopUntil(
[this] { return display_width_ != 0 && display_height_ != 0; });
diff --git a/shell/platform/fuchsia/flutter/tests/integration/touch-input/BUILD.gn b/shell/platform/fuchsia/flutter/tests/integration/touch-input/BUILD.gn
index 03a92db..4094292 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/touch-input/BUILD.gn
+++ b/shell/platform/fuchsia/flutter/tests/integration/touch-input/BUILD.gn
@@ -36,20 +36,16 @@
"$fuchsia_sdk_root/fidl:fuchsia.ui.display.singleton",
"$fuchsia_sdk_root/fidl:fuchsia.ui.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.pointerinjector",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.policy",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.scenic",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.scene",
"$fuchsia_sdk_root/fidl:fuchsia.web",
"$fuchsia_sdk_root/pkg:async",
"$fuchsia_sdk_root/pkg:async-loop-testing",
"$fuchsia_sdk_root/pkg:fidl_cpp",
- "$fuchsia_sdk_root/pkg:scenic_cpp",
"$fuchsia_sdk_root/pkg:sys_component_cpp_testing",
"$fuchsia_sdk_root/pkg:zx",
"embedding-flutter-view:package",
"touch-input-view:package",
- "//build/fuchsia/fidl:fuchsia.ui.gfx",
"//flutter/fml",
"//flutter/shell/platform/fuchsia/flutter/tests/integration/utils:portable_ui_test",
"//third_party/googletest:gtest",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/touch-input/embedding-flutter-view/meta/embedding-flutter-view.cml b/shell/platform/fuchsia/flutter/tests/integration/touch-input/embedding-flutter-view/meta/embedding-flutter-view.cml
index f55ac35..ead2549 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/touch-input/embedding-flutter-view/meta/embedding-flutter-view.cml
+++ b/shell/platform/fuchsia/flutter/tests/integration/touch-input/embedding-flutter-view/meta/embedding-flutter-view.cml
@@ -25,7 +25,6 @@
{
protocol: [
"fuchsia.ui.app.ViewProvider",
- "fuchsia.ui.scenic.Scenic",
"fuchsia.ui.test.input.TouchInputListener",
]
},
diff --git a/shell/platform/fuchsia/flutter/tests/integration/touch-input/meta/touch-input-test.cml b/shell/platform/fuchsia/flutter/tests/integration/touch-input/meta/touch-input-test.cml
index 613142e..c0f6de3 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/touch-input/meta/touch-input-test.cml
+++ b/shell/platform/fuchsia/flutter/tests/integration/touch-input/meta/touch-input-test.cml
@@ -33,7 +33,6 @@
"fuchsia.tracing.provider.Registry",
"fuchsia.ui.input.ImeService",
"fuchsia.vulkan.loader.Loader",
- "fuchsia.ui.scenic.Scenic",
"fuchsia.ui.test.input.TouchInputListener",
"fuchsia.intl.PropertyProvider",
"fuchsia.posix.socket.Provider",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/touch-input/touch-input-test.cc b/shell/platform/fuchsia/flutter/tests/integration/touch-input/touch-input-test.cc
index c2f2725..913ce12 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/touch-input/touch-input-test.cc
+++ b/shell/platform/fuchsia/flutter/tests/integration/touch-input/touch-input-test.cc
@@ -16,7 +16,6 @@
#include <fuchsia/ui/app/cpp/fidl.h>
#include <fuchsia/ui/display/singleton/cpp/fidl.h>
#include <fuchsia/ui/input/cpp/fidl.h>
-#include <fuchsia/ui/policy/cpp/fidl.h>
#include <fuchsia/ui/test/input/cpp/fidl.h>
#include <fuchsia/ui/test/scene/cpp/fidl.h>
#include <fuchsia/web/cpp/fidl.h>
@@ -220,7 +219,8 @@
// Get the display information using the
// |fuchsia.ui.display.singleton.Info|.
- FML_LOG(INFO) << "Waiting for scenic display info";
+ FML_LOG(INFO)
+ << "Waiting for display info from fuchsia.ui.display.singleton.Info";
std::optional<bool> display_metrics_obtained;
fuchsia::ui::display::singleton::InfoPtr display_info =
realm_root()
@@ -344,7 +344,8 @@
// Get the display information using the
// |fuchsia.ui.display.singleton.Info|.
- FML_LOG(INFO) << "Waiting for scenic display info";
+ FML_LOG(INFO)
+ << "Waiting for display info from fuchsia.ui.display.singleton.Info";
std::optional<bool> display_metrics_obtained;
fuchsia::ui::display::singleton::InfoPtr display_info =
realm_root()
diff --git a/shell/platform/fuchsia/flutter/tests/integration/utils/BUILD.gn b/shell/platform/fuchsia/flutter/tests/integration/utils/BUILD.gn
index f72e9ff..812703e 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/utils/BUILD.gn
+++ b/shell/platform/fuchsia/flutter/tests/integration/utils/BUILD.gn
@@ -43,11 +43,10 @@
":check_view",
"$fuchsia_sdk_root/fidl:fuchsia.logger",
"$fuchsia_sdk_root/fidl:fuchsia.ui.app",
+ "$fuchsia_sdk_root/fidl:fuchsia.ui.composition",
"$fuchsia_sdk_root/fidl:fuchsia.ui.display.singleton",
"$fuchsia_sdk_root/fidl:fuchsia.ui.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.observation.geometry",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.policy",
- "$fuchsia_sdk_root/fidl:fuchsia.ui.scenic",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.input",
"$fuchsia_sdk_root/fidl:fuchsia.ui.test.scene",
"$fuchsia_sdk_root/pkg:async-loop-testing",
diff --git a/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.cc b/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.cc
index 12984d8..7100e9b 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.cc
+++ b/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.cc
@@ -90,7 +90,6 @@
realm_builder_.AddRoute(Route{
.capabilities = {Protocol{fuchsia::ui::composition::Allocator::Name_},
Protocol{fuchsia::ui::composition::Flatland::Name_},
- Protocol{fuchsia::ui::scenic::Scenic::Name_},
Protocol{fuchsia::ui::test::input::Registry::Name_},
Protocol{fuchsia::ui::test::scene::Controller::Name_},
Protocol{fuchsia::ui::display::singleton::Info::Name_},
diff --git a/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.h b/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.h
index 9ee454b..363dba7 100644
--- a/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.h
+++ b/shell/platform/fuchsia/flutter/tests/integration/utils/portable_ui_test.h
@@ -7,10 +7,9 @@
#include <fuchsia/sysmem/cpp/fidl.h>
#include <fuchsia/ui/app/cpp/fidl.h>
+#include <fuchsia/ui/composition/cpp/fidl.h>
#include <fuchsia/ui/display/singleton/cpp/fidl.h>
#include <fuchsia/ui/input/cpp/fidl.h>
-#include <fuchsia/ui/policy/cpp/fidl.h>
-#include <fuchsia/ui/scenic/cpp/fidl.h>
#include <fuchsia/ui/test/input/cpp/fidl.h>
#include <fuchsia/ui/test/scene/cpp/fidl.h>
#include <lib/async-loop/testing/cpp/real_loop.h>
@@ -100,7 +99,6 @@
component_testing::RealmBuilder* realm_builder() { return &realm_builder_; }
component_testing::RealmRoot* realm_root() { return realm_.get(); }
- fuchsia::ui::scenic::ScenicPtr scenic_;
uint32_t display_width_ = 0;
uint32_t display_height_ = 0;