display_layout_builder_unittest.cc 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. // Copyright 2016 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "ui/display/display_layout_builder.h"
  5. #include "testing/gtest/include/gtest/gtest.h"
  6. namespace display {
  7. TEST(DisplayLayoutBuilderTest, SecondaryPlacement) {
  8. DisplayLayoutBuilder builder(1);
  9. builder.SetSecondaryPlacement(2, DisplayPlacement::LEFT, 30);
  10. std::unique_ptr<DisplayLayout> layout(builder.Build());
  11. ASSERT_EQ(1u, layout->placement_list.size());
  12. EXPECT_EQ(2, layout->placement_list[0].display_id);
  13. EXPECT_EQ(1, layout->placement_list[0].parent_display_id);
  14. EXPECT_EQ(30, layout->placement_list[0].offset);
  15. EXPECT_EQ(DisplayPlacement::LEFT, layout->placement_list[0].position);
  16. }
  17. TEST(DisplayLayoutBuilderTest, MultiplePlacement) {
  18. DisplayLayoutBuilder builder(1);
  19. builder.AddDisplayPlacement(5, 1, DisplayPlacement::TOP, 30);
  20. builder.AddDisplayPlacement(3, 5, DisplayPlacement::LEFT, 20);
  21. builder.AddDisplayPlacement(4, 5, DisplayPlacement::RIGHT, 10);
  22. std::unique_ptr<DisplayLayout> layout(builder.Build());
  23. ASSERT_EQ(3u, layout->placement_list.size());
  24. // placmenets are sorted by display_id.
  25. EXPECT_EQ(3, layout->placement_list[0].display_id);
  26. EXPECT_EQ(5, layout->placement_list[0].parent_display_id);
  27. EXPECT_EQ(20, layout->placement_list[0].offset);
  28. EXPECT_EQ(DisplayPlacement::LEFT, layout->placement_list[0].position);
  29. EXPECT_EQ(4, layout->placement_list[1].display_id);
  30. EXPECT_EQ(5, layout->placement_list[1].parent_display_id);
  31. EXPECT_EQ(10, layout->placement_list[1].offset);
  32. EXPECT_EQ(DisplayPlacement::RIGHT, layout->placement_list[1].position);
  33. EXPECT_EQ(5, layout->placement_list[2].display_id);
  34. EXPECT_EQ(1, layout->placement_list[2].parent_display_id);
  35. EXPECT_EQ(30, layout->placement_list[2].offset);
  36. EXPECT_EQ(DisplayPlacement::TOP, layout->placement_list[2].position);
  37. }
  38. } // namespace display