summaryrefslogtreecommitdiffstats
path: root/ash
diff options
context:
space:
mode:
authoryusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-14 09:40:18 +0000
committeryusukes@chromium.org <yusukes@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-14 09:40:18 +0000
commit2127b4c639c1a7e3529e74218d859dbd6f9dcd98 (patch)
treea9c75d1ee4b15a1a7d8c89bc8787946c26dc4825 /ash
parent889dbcd50e560026e5d88973419f4dab0646124b (diff)
downloadchromium_src-2127b4c639c1a7e3529e74218d859dbd6f9dcd98.zip
chromium_src-2127b4c639c1a7e3529e74218d859dbd6f9dcd98.tar.gz
chromium_src-2127b4c639c1a7e3529e74218d859dbd6f9dcd98.tar.bz2
Add unit tests for TAKE_SCREENSHOT.
The tests are currently commented out for no reason. BUG=105198 TEST=ran aura_shell_unittests Review URL: http://codereview.chromium.org/9194009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117792 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash')
-rw-r--r--ash/accelerators/accelerator_controller_unittest.cc43
1 files changed, 39 insertions, 4 deletions
diff --git a/ash/accelerators/accelerator_controller_unittest.cc b/ash/accelerators/accelerator_controller_unittest.cc
index ceb87df..e5dd5d9 100644
--- a/ash/accelerators/accelerator_controller_unittest.cc
+++ b/ash/accelerators/accelerator_controller_unittest.cc
@@ -4,6 +4,7 @@
#include "ash/accelerators/accelerator_controller.h"
#include "ash/ime/event.h"
+#include "ash/screenshot_delegate.h"
#include "ash/shell.h"
#include "ash/shell_window_ids.h"
#include "ash/test/aura_shell_test_base.h"
@@ -23,6 +24,7 @@ namespace ash {
namespace test {
namespace {
+
class TestTarget : public ui::AcceleratorTarget {
public:
TestTarget() : accelerator_pressed_count_(0) {};
@@ -42,6 +44,29 @@ class TestTarget : public ui::AcceleratorTarget {
private:
int accelerator_pressed_count_;
+
+ DISALLOW_COPY_AND_ASSIGN(TestTarget);
+};
+
+class DummyScreenshotDelegate : public ScreenshotDelegate {
+ public:
+ DummyScreenshotDelegate() : handle_take_screenshot_count_(0) {
+ }
+ virtual ~DummyScreenshotDelegate() {}
+
+ // Overridden from ScreenshotDelegate:
+ virtual void HandleTakeScreenshot() OVERRIDE {
+ ++handle_take_screenshot_count_;
+ }
+
+ int handle_take_screenshot_count() const {
+ return handle_take_screenshot_count_;
+ }
+
+ private:
+ int handle_take_screenshot_count_;
+
+ DISALLOW_COPY_AND_ASSIGN(DummyScreenshotDelegate);
};
bool TestTarget::AcceleratorPressed(const ui::Accelerator& accelerator) {
@@ -222,10 +247,20 @@ TEST_F(AcceleratorControllerTest, GlobalAccelerators) {
EXPECT_TRUE(GetController()->Process(
ui::Accelerator(ui::VKEY_TAB, false, false, true)));
// TakeScreenshot
- // EXPECT_TRUE(GetController()->Process(
- // ui::Accelerator(ui::VKEY_F5, false, true, false)));
- // EXPECT_TRUE(GetController()->Process(
- // ui::Accelerator(ui::VKEY_PRINT, false, false, false)));
+ // True should always be returned regardless of the existence of the delegate.
+ EXPECT_TRUE(GetController()->Process(
+ ui::Accelerator(ui::VKEY_F5, false, true, false)));
+ EXPECT_TRUE(GetController()->Process(
+ ui::Accelerator(ui::VKEY_PRINT, false, false, false)));
+ DummyScreenshotDelegate* delegate = new DummyScreenshotDelegate;
+ GetController()->SetScreenshotDelegate(delegate);
+ EXPECT_EQ(0, delegate->handle_take_screenshot_count());
+ EXPECT_TRUE(GetController()->Process(
+ ui::Accelerator(ui::VKEY_F5, false, true, false)));
+ EXPECT_EQ(1, delegate->handle_take_screenshot_count());
+ EXPECT_TRUE(GetController()->Process(
+ ui::Accelerator(ui::VKEY_PRINT, false, false, false)));
+ EXPECT_EQ(2, delegate->handle_take_screenshot_count());
#if !defined(NDEBUG)
// RotateScreen
EXPECT_TRUE(GetController()->Process(