Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2825)

Unified Diff: chrome/browser/ui/gtk/extensions/media_galleries_dialog_gtk_unittest.cc

Issue 10854150: Cocoa: Media gallery dialog unit test (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/gtk/extensions/media_galleries_dialog_gtk_unittest.cc
diff --git a/chrome/browser/ui/gtk/extensions/media_galleries_dialog_gtk_unittest.cc b/chrome/browser/ui/gtk/extensions/media_galleries_dialog_gtk_unittest.cc
index be255c8f7a45a5489da22b3b218f0e5e437fd9cb..5d017bce29e0575c0c29e2a0b5f59e3ad9d6f3f6 100644
--- a/chrome/browser/ui/gtk/extensions/media_galleries_dialog_gtk_unittest.cc
+++ b/chrome/browser/ui/gtk/extensions/media_galleries_dialog_gtk_unittest.cc
@@ -2,96 +2,101 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/media_gallery/media_galleries_dialog_controller.h"
+#include "chrome/browser/media_gallery/media_galleries_dialog_controller_mock.h"
#include "chrome/browser/ui/gtk/extensions/media_galleries_dialog_gtk.h"
#include "testing/gtest/include/gtest/gtest.h"
+using ::testing::_;
+using ::testing::NiceMock;
+using ::testing::ReturnRef;
+
namespace chrome {
-class MediaGalleriesDialogTest : public testing::Test,
- public MediaGalleriesDialogController {
- public:
- MediaGalleriesDialogTest() : toggles_(0) {}
- virtual ~MediaGalleriesDialogTest() {}
-
- virtual void DialogFinished(bool accepted) OVERRIDE {}
- virtual void DidToggleGallery(const MediaGalleryPrefInfo* pref_info,
- bool enabled) OVERRIDE {
- toggles_++;
- MediaGalleriesDialogController::DidToggleGallery(pref_info, enabled);
- }
-
- protected:
- // Counter that tracks the number of times a checkbox has been toggled.
- size_t toggles_;
+class MediaGalleriesDialogTest : public testing::Test {
};
// Tests that checkboxes are initialized according to the contents of
-// |known_galleries|.
+// permissions().
TEST_F(MediaGalleriesDialogTest, InitializeCheckboxes) {
+ NiceMock<MediaGalleriesDialogControllerMock> controller;
+
+ MediaGalleriesDialogController::KnownGalleryPermissions permissions;
MediaGalleryPrefInfo gallery1;
gallery1.pref_id = 1;
- known_galleries_[1] = GalleryPermission(gallery1, true);
+ permissions[1] =
+ MediaGalleriesDialogController::GalleryPermission(gallery1, true);
MediaGalleryPrefInfo gallery2;
gallery2.pref_id = 2;
- known_galleries_[2] = GalleryPermission(gallery2, false);
+ permissions[2] =
+ MediaGalleriesDialogController::GalleryPermission(gallery2, false);
+ EXPECT_CALL(controller, permissions()).
+ WillRepeatedly(ReturnRef(permissions));
+
+ // Initializing checkboxes should not cause them to be toggled.
+ EXPECT_CALL(controller, DidToggleGallery(_, _)).
+ Times(0);
- scoped_ptr<MediaGalleriesDialogGtk>
- dialog_(new MediaGalleriesDialogGtk(this));
- EXPECT_EQ(2U, dialog_->checkbox_map_.size());
+ MediaGalleriesDialogGtk dialog(&controller);
+ EXPECT_EQ(2U, dialog.checkbox_map_.size());
- GtkWidget* checkbox1 = dialog_->checkbox_map_[&known_galleries_[1].pref_info];
+ GtkWidget* checkbox1 = dialog.checkbox_map_[&permissions[1].pref_info];
ASSERT_TRUE(GTK_IS_TOGGLE_BUTTON(checkbox1));
EXPECT_TRUE(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbox1)));
- GtkWidget* checkbox2 = dialog_->checkbox_map_[&known_galleries_[2].pref_info];
+ GtkWidget* checkbox2 = dialog.checkbox_map_[&permissions[2].pref_info];
ASSERT_TRUE(GTK_IS_TOGGLE_BUTTON(checkbox2));
EXPECT_FALSE(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbox2)));
-
- // Initializing checkboxes should not cause them to be toggled.
- EXPECT_EQ(0U, toggles_);
}
// Tests that toggling checkboxes updates the controller.
TEST_F(MediaGalleriesDialogTest, ToggleCheckboxes) {
+ NiceMock<MediaGalleriesDialogControllerMock> controller;
+
+ MediaGalleriesDialogController::KnownGalleryPermissions permissions;
MediaGalleryPrefInfo gallery1;
gallery1.pref_id = 1;
- known_galleries_[1] = GalleryPermission(gallery1, true);
+ permissions[1] =
+ MediaGalleriesDialogController::GalleryPermission(gallery1, true);
+ EXPECT_CALL(controller, permissions()).
+ WillRepeatedly(ReturnRef(permissions));
- scoped_ptr<MediaGalleriesDialogGtk>
- dialog_(new MediaGalleriesDialogGtk(this));
- EXPECT_EQ(1U, dialog_->checkbox_map_.size());
+ MediaGalleriesDialogGtk dialog(&controller);
+ EXPECT_EQ(1U, dialog.checkbox_map_.size());
GtkWidget* checkbox =
- dialog_->checkbox_map_[&known_galleries_[1].pref_info];
+ dialog.checkbox_map_[&permissions[1].pref_info];
ASSERT_TRUE(GTK_IS_TOGGLE_BUTTON(checkbox));
EXPECT_TRUE(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(checkbox)));
+ EXPECT_CALL(controller, DidToggleGallery(_, false));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbox), FALSE);
- EXPECT_FALSE(known_galleries_[1].allowed);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbox), TRUE);
- EXPECT_TRUE(known_galleries_[1].allowed);
- EXPECT_EQ(2U, toggles_);
+ EXPECT_CALL(controller, DidToggleGallery(_, true));
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbox), TRUE);
}
// Tests that UpdateGallery will add a new checkbox, but only if it refers to
// a gallery that the dialog hasn't seen before.
TEST_F(MediaGalleriesDialogTest, UpdateAdds) {
- scoped_ptr<MediaGalleriesDialogGtk>
- dialog_(new MediaGalleriesDialogGtk(this));
+ NiceMock<MediaGalleriesDialogControllerMock> controller;
+
+ MediaGalleriesDialogController::KnownGalleryPermissions permissions;
+ EXPECT_CALL(controller, permissions()).
+ WillRepeatedly(ReturnRef(permissions));
+
+ MediaGalleriesDialogGtk dialog(&controller);
- EXPECT_TRUE(dialog_->checkbox_map_.empty());
+ EXPECT_TRUE(dialog.checkbox_map_.empty());
MediaGalleryPrefInfo gallery1;
- dialog_->UpdateGallery(&gallery1, true);
- EXPECT_EQ(1U, dialog_->checkbox_map_.size());
+ dialog.UpdateGallery(&gallery1, true);
+ EXPECT_EQ(1U, dialog.checkbox_map_.size());
MediaGalleryPrefInfo gallery2;
- dialog_->UpdateGallery(&gallery2, true);
- EXPECT_EQ(2U, dialog_->checkbox_map_.size());
+ dialog.UpdateGallery(&gallery2, true);
+ EXPECT_EQ(2U, dialog.checkbox_map_.size());
- dialog_->UpdateGallery(&gallery2, false);
- EXPECT_EQ(2U, dialog_->checkbox_map_.size());
+ dialog.UpdateGallery(&gallery2, false);
+ EXPECT_EQ(2U, dialog.checkbox_map_.size());
}
} // namespace chrome
« no previous file with comments | « chrome/browser/ui/cocoa/extensions/media_galleries_dialog_cocoa_unittest.mm ('k') | chrome/chrome_tests.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698