summaryrefslogtreecommitdiffstats
path: root/chrome/browser/cocoa/browser_accessibility_unittest.mm
diff options
context:
space:
mode:
authordtseng@chromium.org <dtseng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-13 18:50:10 +0000
committerdtseng@chromium.org <dtseng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-10-13 18:50:10 +0000
commit1dbadbd465e5cce4031dd20eb901ac7da2d67668 (patch)
tree83f16e5657ccc3a17c6059f72dbba171fce8c478 /chrome/browser/cocoa/browser_accessibility_unittest.mm
parentfd21468f5e0b3d8523a6ad93e337e27632c2b1b6 (diff)
downloadchromium_src-1dbadbd465e5cce4031dd20eb901ac7da2d67668.zip
chromium_src-1dbadbd465e5cce4031dd20eb901ac7da2d67668.tar.gz
chromium_src-1dbadbd465e5cce4031dd20eb901ac7da2d67668.tar.bz2
Refactoring of BrowserAccessibility (Mac) to use cross platform base classes.
BUG=none TEST=passing unit tests. Review URL: http://codereview.chromium.org/3696003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62431 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa/browser_accessibility_unittest.mm')
-rw-r--r--chrome/browser/cocoa/browser_accessibility_unittest.mm53
1 files changed, 41 insertions, 12 deletions
diff --git a/chrome/browser/cocoa/browser_accessibility_unittest.mm b/chrome/browser/cocoa/browser_accessibility_unittest.mm
index 104c26e..27bee1a 100644
--- a/chrome/browser/cocoa/browser_accessibility_unittest.mm
+++ b/chrome/browser/cocoa/browser_accessibility_unittest.mm
@@ -6,14 +6,16 @@
#include "base/string_util.h"
#include "base/utf_string_conversions.h"
+#include "chrome/browser/accessibility/browser_accessibility_mac.h"
#include "chrome/browser/cocoa/browser_accessibility.h"
#include "chrome/browser/cocoa/cocoa_test_helper.h"
#include "testing/gtest/include/gtest/gtest.h"
#import "testing/gtest_mac.h"
-@interface MockAccessibilityDelegate : NSObject<BrowserAccessibilityDelegate>
+@interface MockAccessibilityDelegate :
+ NSObject<BrowserAccessibilityDelegateCocoa>
-- (NSPoint)accessibilityPointInScreen:(BrowserAccessibility*)accessibility;
+- (NSPoint)accessibilityPointInScreen:(BrowserAccessibilityCocoa*)accessibility;
- (void)doDefaultAction:(int32)accessibilityObjectId;
- (void)setAccessibilityFocus:(BOOL)focus
accessibilityId:(int32)accessibilityObjectId;
@@ -23,7 +25,8 @@
@implementation MockAccessibilityDelegate
-- (NSPoint)accessibilityPointInScreen:(BrowserAccessibility*)accessibility {
+- (NSPoint)accessibilityPointInScreen:
+ (BrowserAccessibilityCocoa*)accessibility {
return NSZeroPoint;
}
- (void)doDefaultAction:(int32)accessibilityObjectId {
@@ -62,24 +65,50 @@ class BrowserAccessibilityTest : public CocoaTest {
child2.location.width = 250;
child2.location.height = 100;
- root.children.push_back(child1);
- root.children.push_back(child2);
+ // TODO(dtseng): use BrowserAccessibilityManagerMac once it manages
+ // these objects.
+ BrowserAccessibility* rootBrowserAccessibility =
+ BrowserAccessibility::Create();
+ BrowserAccessibility* child1BrowserAccessibility =
+ BrowserAccessibility::Create();
+ BrowserAccessibility* child2BrowserAccessibility =
+ BrowserAccessibility::Create();
+
+ rootBrowserAccessibility->Initialize(NULL,
+ NULL,
+ 0,
+ 0,
+ root);
+ child1BrowserAccessibility->Initialize(NULL,
+ NULL,
+ 0,
+ 0,
+ child1);
+ child2BrowserAccessibility->Initialize(NULL,
+ NULL,
+ 0,
+ 0,
+ child2);
+
+ rootBrowserAccessibility->AddChild(child1BrowserAccessibility);
+ rootBrowserAccessibility->AddChild(child2BrowserAccessibility);
delegate_.reset([[MockAccessibilityDelegate alloc] init]);
accessibility_.reset(
- [[BrowserAccessibility alloc] initWithObject:root
- delegate:delegate_
- parent:delegate_]);
+ [[BrowserAccessibilityCocoa alloc]
+ initWithObject:rootBrowserAccessibility
+ delegate:delegate_
+ parent:delegate_]);
}
protected:
scoped_nsobject<MockAccessibilityDelegate> delegate_;
- scoped_nsobject<BrowserAccessibility> accessibility_;
+ scoped_nsobject<BrowserAccessibilityCocoa> accessibility_;
};
// Standard hit test.
TEST_F(BrowserAccessibilityTest, HitTestTest) {
- BrowserAccessibility* firstChild =
+ BrowserAccessibilityCocoa* firstChild =
[accessibility_ accessibilityHitTest:NSMakePoint(50, 50)];
EXPECT_NSEQ(@"Child1",
[firstChild accessibilityAttributeValue:NSAccessibilityTitleAttribute]);
@@ -87,7 +116,7 @@ TEST_F(BrowserAccessibilityTest, HitTestTest) {
// Test doing a hit test on the edge of a child.
TEST_F(BrowserAccessibilityTest, EdgeHitTest) {
- BrowserAccessibility* firstChild =
+ BrowserAccessibilityCocoa* firstChild =
[accessibility_ accessibilityHitTest:NSMakePoint(0, 0)];
EXPECT_NSEQ(@"Child1",
[firstChild accessibilityAttributeValue:NSAccessibilityTitleAttribute]);
@@ -97,7 +126,7 @@ TEST_F(BrowserAccessibilityTest, EdgeHitTest) {
// the hit test has been narrowed down to this object or one of its children
// so it should return itself since it has no better hit result.
TEST_F(BrowserAccessibilityTest, InvalidHitTestCoordsTest) {
- BrowserAccessibility* hitTestResult =
+ BrowserAccessibilityCocoa* hitTestResult =
[accessibility_ accessibilityHitTest:NSMakePoint(-50, 50)];
EXPECT_NSEQ(accessibility_, hitTestResult);
}