Add a function to construct the GRSurface in test
This fixes the build error as the initializer list no longer work
without the proper constructor for c++ class.
Bug: 74397117
Test: unit tests pass
Change-Id: If3ff508a1a01ad5326413dab8e05bacae8a946c8
diff --git a/tests/unit/screen_ui_test.cpp b/tests/unit/screen_ui_test.cpp
index dc6e6a8..06a98c7 100644
--- a/tests/unit/screen_ui_test.cpp
+++ b/tests/unit/screen_ui_test.cpp
@@ -69,6 +69,17 @@
MockDrawFunctions draw_funcs_;
};
+// TODO(xunchang) Create a constructor.
+static GRSurface CreateFakeGRSurface(int width, int height, int row_bytes, int pixel_bytes) {
+ GRSurface fake_surface;
+ fake_surface.width = width;
+ fake_surface.height = height;
+ fake_surface.row_bytes = row_bytes;
+ fake_surface.pixel_bytes = pixel_bytes;
+
+ return fake_surface;
+}
+
TEST_F(ScreenUITest, StartPhoneMenuSmoke) {
TextMenu menu(false, 10, 20, HEADERS, ITEMS, 0, 20, draw_funcs_);
ASSERT_FALSE(menu.scrollable());
@@ -230,7 +241,7 @@
}
TEST_F(ScreenUITest, GraphicMenuSelection) {
- GRSurface fake_surface = GRSurface{ 50, 50, 50, 1, nullptr };
+ auto fake_surface = CreateFakeGRSurface(50, 50, 50, 1);
std::vector<GRSurface*> items = { &fake_surface, &fake_surface, &fake_surface };
GraphicMenu menu(&fake_surface, items, 0, draw_funcs_);
@@ -252,13 +263,13 @@
}
TEST_F(ScreenUITest, GraphicMenuValidate) {
- auto fake_surface = GRSurface{ 50, 50, 50, 1, nullptr };
+ auto fake_surface = CreateFakeGRSurface(50, 50, 50, 1);
std::vector<GRSurface*> items = { &fake_surface, &fake_surface, &fake_surface };
ASSERT_TRUE(GraphicMenu::Validate(200, 200, &fake_surface, items));
// Menu exceeds the horizontal boundary.
- auto wide_surface = GRSurface{ 300, 50, 300, 1, nullptr };
+ auto wide_surface = CreateFakeGRSurface(300, 50, 300, 1);
ASSERT_FALSE(GraphicMenu::Validate(299, 200, &wide_surface, items));
// Menu exceeds the vertical boundary.