Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / ash / frame / caption_buttons / frame_caption_button_container_view_unittest.cc
index a487005..fe53880 100644 (file)
@@ -19,17 +19,17 @@ namespace {
 
 class TestWidgetDelegate : public views::WidgetDelegateView {
  public:
-  explicit TestWidgetDelegate(bool can_maximize) : can_maximize_(can_maximize) {
-  }
-  virtual ~TestWidgetDelegate() {
-  }
+  TestWidgetDelegate(bool can_maximize, bool can_minimize)
+      : can_maximize_(can_maximize), can_minimize_(can_minimize) {}
+  ~TestWidgetDelegate() override {}
 
-  virtual bool CanMaximize() const OVERRIDE {
-    return can_maximize_;
-  }
+  bool CanMaximize() const override { return can_maximize_; }
+
+  bool CanMinimize() const override { return can_minimize_; }
 
  private:
   bool can_maximize_;
+  bool can_minimize_;
 
   DISALLOW_COPY_AND_ASSIGN(TestWidgetDelegate);
 };
@@ -43,20 +43,26 @@ class FrameCaptionButtonContainerViewTest : public ash::test::AshTestBase {
     MAXIMIZE_DISALLOWED
   };
 
+  enum MinimizeAllowed {
+    MINIMIZE_ALLOWED,
+    MINIMIZE_DISALLOWED
+  };
+
   FrameCaptionButtonContainerViewTest() {
   }
 
-  virtual ~FrameCaptionButtonContainerViewTest() {
-  }
+  ~FrameCaptionButtonContainerViewTest() override {}
 
   // Creates a widget which allows maximizing based on |maximize_allowed|.
   // The caller takes ownership of the returned widget.
   views::Widget* CreateTestWidget(
-      MaximizeAllowed maximize_allowed) WARN_UNUSED_RESULT {
+      MaximizeAllowed maximize_allowed,
+      MinimizeAllowed minimize_allowed) WARN_UNUSED_RESULT {
     views::Widget* widget = new views::Widget;
     views::Widget::InitParams params;
     params.delegate = new TestWidgetDelegate(
-        maximize_allowed == MAXIMIZE_ALLOWED);
+        maximize_allowed == MAXIMIZE_ALLOWED,
+        minimize_allowed == MINIMIZE_ALLOWED);
     params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET;
     params.context = CurrentContext();
     widget->Init(params);
@@ -106,10 +112,8 @@ class FrameCaptionButtonContainerViewTest : public ash::test::AshTestBase {
 TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) {
   // All the buttons should be visible when minimizing and maximizing are
   // allowed.
-  scoped_ptr<views::Widget> widget_can_maximize(
-      CreateTestWidget(MAXIMIZE_ALLOWED));
-  FrameCaptionButtonContainerView container1(widget_can_maximize.get(),
-      FrameCaptionButtonContainerView::MINIMIZE_ALLOWED);
+  FrameCaptionButtonContainerView container1(
+      CreateTestWidget(MAXIMIZE_ALLOWED, MINIMIZE_ALLOWED));
   SetMockImages(&container1);
   container1.Layout();
   FrameCaptionButtonContainerView::TestApi t1(&container1);
@@ -121,10 +125,8 @@ TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) {
 
   // The minimize button should be visible when minimizing is allowed but
   // maximizing is disallowed.
-  scoped_ptr<views::Widget> widget_cannot_maximize(
-      CreateTestWidget(MAXIMIZE_DISALLOWED));
-  FrameCaptionButtonContainerView container2(widget_cannot_maximize.get(),
-      FrameCaptionButtonContainerView::MINIMIZE_ALLOWED);
+  FrameCaptionButtonContainerView container2(
+      CreateTestWidget(MAXIMIZE_DISALLOWED, MINIMIZE_ALLOWED));
   SetMockImages(&container2);
   container2.Layout();
   FrameCaptionButtonContainerView::TestApi t2(&container2);
@@ -136,8 +138,8 @@ TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) {
 
   // Neither the minimize button nor the size button should be visible when
   // neither minimizing nor maximizing are allowed.
-  FrameCaptionButtonContainerView container3(widget_cannot_maximize.get(),
-      FrameCaptionButtonContainerView::MINIMIZE_DISALLOWED);
+  FrameCaptionButtonContainerView container3(
+      CreateTestWidget(MAXIMIZE_DISALLOWED, MINIMIZE_DISALLOWED));
   SetMockImages(&container3);
   container3.Layout();
   FrameCaptionButtonContainerView::TestApi t3(&container3);
@@ -152,10 +154,8 @@ TEST_F(FrameCaptionButtonContainerViewTest, ButtonVisibility) {
 // correct placement of the buttons.
 TEST_F(FrameCaptionButtonContainerViewTest,
        TestUpdateSizeButtonVisibilityAnimation) {
-  scoped_ptr<views::Widget> widget_can_maximize(
-      CreateTestWidget(MAXIMIZE_ALLOWED));
-  FrameCaptionButtonContainerView container(widget_can_maximize.get(),
-      FrameCaptionButtonContainerView::MINIMIZE_ALLOWED);
+  FrameCaptionButtonContainerView container(
+      CreateTestWidget(MAXIMIZE_ALLOWED, MINIMIZE_ALLOWED));
   SetMockImages(&container);
   container.SetBoundsRect(gfx::Rect(container.GetPreferredSize()));
   container.Layout();