Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ee9c65a3 authored by Tianjie Xu's avatar Tianjie Xu Committed by Gerrit Code Review
Browse files

Merge "Add a function to construct the GRSurface in test"

parents 06ccd00e 1e10cc42
Loading
Loading
Loading
Loading
+14 −3
Original line number Diff line number Diff line
@@ -69,6 +69,17 @@ class ScreenUITest : public testing::Test {
  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, WearMenuSelectItemsOverflow) {
}

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, GraphicMenuSelection) {
}

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.