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

Side by Side Diff: content/browser/accessibility/accessibility_win_browsertest.cc

Issue 1549113002: Switch to standard integer types in content/browser/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 12 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stddef.h>
6 #include <stdint.h>
7
5 #include <vector> 8 #include <vector>
6 9
10 #include "base/macros.h"
7 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
8 #include "base/strings/string_number_conversions.h" 12 #include "base/strings/string_number_conversions.h"
9 #include "base/strings/sys_string_conversions.h" 13 #include "base/strings/sys_string_conversions.h"
10 #include "base/win/scoped_bstr.h" 14 #include "base/win/scoped_bstr.h"
11 #include "base/win/scoped_comptr.h" 15 #include "base/win/scoped_comptr.h"
12 #include "base/win/scoped_variant.h" 16 #include "base/win/scoped_variant.h"
13 #include "content/browser/accessibility/accessibility_mode_helper.h" 17 #include "content/browser/accessibility/accessibility_mode_helper.h"
14 #include "content/browser/accessibility/accessibility_tree_formatter.h" 18 #include "content/browser/accessibility/accessibility_tree_formatter.h"
15 #include "content/browser/accessibility/accessibility_tree_formatter_utils_win.h " 19 #include "content/browser/accessibility/accessibility_tree_formatter_utils_win.h "
16 #include "content/browser/renderer_host/render_view_host_impl.h" 20 #include "content/browser/renderer_host/render_view_host_impl.h"
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 base::win::ScopedComPtr<IAccessibleText>* input_text); 63 base::win::ScopedComPtr<IAccessibleText>* input_text);
60 void SetUpTextareaField( 64 void SetUpTextareaField(
61 base::win::ScopedComPtr<IAccessibleText>* textarea_text); 65 base::win::ScopedComPtr<IAccessibleText>* textarea_text);
62 66
63 static base::win::ScopedComPtr<IAccessible> GetAccessibleFromVariant( 67 static base::win::ScopedComPtr<IAccessible> GetAccessibleFromVariant(
64 IAccessible* parent, 68 IAccessible* parent,
65 VARIANT* var); 69 VARIANT* var);
66 static HRESULT QueryIAccessible2(IAccessible* accessible, 70 static HRESULT QueryIAccessible2(IAccessible* accessible,
67 IAccessible2** accessible2); 71 IAccessible2** accessible2);
68 static void FindNodeInAccessibilityTree(IAccessible* node, 72 static void FindNodeInAccessibilityTree(IAccessible* node,
69 int32 expected_role, 73 int32_t expected_role,
70 const std::wstring& expected_name, 74 const std::wstring& expected_name,
71 int32 depth, 75 int32_t depth,
72 bool* found); 76 bool* found);
73 static void CheckTextAtOffset( 77 static void CheckTextAtOffset(
74 base::win::ScopedComPtr<IAccessibleText>& element, 78 base::win::ScopedComPtr<IAccessibleText>& element,
75 LONG offset, 79 LONG offset,
76 IA2TextBoundaryType boundary_type, 80 IA2TextBoundaryType boundary_type,
77 LONG expected_start_offset, 81 LONG expected_start_offset,
78 LONG expected_end_offset, 82 LONG expected_end_offset,
79 const std::wstring& expected_text); 83 const std::wstring& expected_text);
80 static std::vector<base::win::ScopedVariant> GetAllAccessibleChildren( 84 static std::vector<base::win::ScopedVariant> GetAllAccessibleChildren(
81 IAccessible* element); 85 IAccessible* element);
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 HRESULT hr = accessible->QueryInterface(service_provider.Receive()); 257 HRESULT hr = accessible->QueryInterface(service_provider.Receive());
254 return SUCCEEDED(hr) ? 258 return SUCCEEDED(hr) ?
255 service_provider->QueryService(IID_IAccessible2, accessible2) : hr; 259 service_provider->QueryService(IID_IAccessible2, accessible2) : hr;
256 } 260 }
257 261
258 // Recursively search through all of the descendants reachable from an 262 // Recursively search through all of the descendants reachable from an
259 // IAccessible node and return true if we find one with the given role 263 // IAccessible node and return true if we find one with the given role
260 // and name. 264 // and name.
261 void AccessibilityWinBrowserTest::FindNodeInAccessibilityTree( 265 void AccessibilityWinBrowserTest::FindNodeInAccessibilityTree(
262 IAccessible* node, 266 IAccessible* node,
263 int32 expected_role, 267 int32_t expected_role,
264 const std::wstring& expected_name, 268 const std::wstring& expected_name,
265 int32 depth, 269 int32_t depth,
266 bool* found) { 270 bool* found) {
267 base::win::ScopedBstr name_bstr; 271 base::win::ScopedBstr name_bstr;
268 base::win::ScopedVariant childid_self(CHILDID_SELF); 272 base::win::ScopedVariant childid_self(CHILDID_SELF);
269 node->get_accName(childid_self, name_bstr.Receive()); 273 node->get_accName(childid_self, name_bstr.Receive());
270 std::wstring name(name_bstr, name_bstr.Length()); 274 std::wstring name(name_bstr, name_bstr.Length());
271 base::win::ScopedVariant role; 275 base::win::ScopedVariant role;
272 node->get_accRole(childid_self, role.Receive()); 276 node->get_accRole(childid_self, role.Receive());
273 ASSERT_EQ(VT_I4, role.type()); 277 ASSERT_EQ(VT_I4, role.type());
274 278
275 // Print the accessibility tree as we go, because if this test fails 279 // Print the accessibility tree as we go, because if this test fails
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
351 } 355 }
352 356
353 357
354 // AccessibleChecker ---------------------------------------------------------- 358 // AccessibleChecker ----------------------------------------------------------
355 359
356 class AccessibilityWinBrowserTest::AccessibleChecker { 360 class AccessibilityWinBrowserTest::AccessibleChecker {
357 public: 361 public:
358 // This constructor can be used if the IA2 role will be the same as the MSAA 362 // This constructor can be used if the IA2 role will be the same as the MSAA
359 // role. 363 // role.
360 AccessibleChecker(const std::wstring& expected_name, 364 AccessibleChecker(const std::wstring& expected_name,
361 int32 expected_role, 365 int32_t expected_role,
362 const std::wstring& expected_value); 366 const std::wstring& expected_value);
363 AccessibleChecker(const std::wstring& expected_name, 367 AccessibleChecker(const std::wstring& expected_name,
364 int32 expected_role, 368 int32_t expected_role,
365 int32 expected_ia2_role, 369 int32_t expected_ia2_role,
366 const std::wstring& expected_value); 370 const std::wstring& expected_value);
367 AccessibleChecker(const std::wstring& expected_name, 371 AccessibleChecker(const std::wstring& expected_name,
368 const std::wstring& expected_role, 372 const std::wstring& expected_role,
369 int32 expected_ia2_role, 373 int32_t expected_ia2_role,
370 const std::wstring& expected_value); 374 const std::wstring& expected_value);
371 375
372 // Append an AccessibleChecker that verifies accessibility information for 376 // Append an AccessibleChecker that verifies accessibility information for
373 // a child IAccessible. Order is important. 377 // a child IAccessible. Order is important.
374 void AppendExpectedChild(AccessibleChecker* expected_child); 378 void AppendExpectedChild(AccessibleChecker* expected_child);
375 379
376 // Check that the name and role of the given IAccessible instance and its 380 // Check that the name and role of the given IAccessible instance and its
377 // descendants match the expected names and roles that this object was 381 // descendants match the expected names and roles that this object was
378 // initialized with. 382 // initialized with.
379 void CheckAccessible(IAccessible* accessible); 383 void CheckAccessible(IAccessible* accessible);
(...skipping 15 matching lines...) Expand all
395 void CheckAccessibleChildren(IAccessible* accessible); 399 void CheckAccessibleChildren(IAccessible* accessible);
396 base::string16 RoleVariantToString(const base::win::ScopedVariant& role); 400 base::string16 RoleVariantToString(const base::win::ScopedVariant& role);
397 401
398 // Expected accessible name. Checked against IAccessible::get_accName. 402 // Expected accessible name. Checked against IAccessible::get_accName.
399 std::wstring name_; 403 std::wstring name_;
400 404
401 // Expected accessible role. Checked against IAccessible::get_accRole. 405 // Expected accessible role. Checked against IAccessible::get_accRole.
402 base::win::ScopedVariant role_; 406 base::win::ScopedVariant role_;
403 407
404 // Expected IAccessible2 role. Checked against IAccessible2::role. 408 // Expected IAccessible2 role. Checked against IAccessible2::role.
405 int32 ia2_role_; 409 int32_t ia2_role_;
406 410
407 // Expected accessible value. Checked against IAccessible::get_accValue. 411 // Expected accessible value. Checked against IAccessible::get_accValue.
408 std::wstring value_; 412 std::wstring value_;
409 413
410 // Expected accessible state. Checked against IAccessible::get_accState. 414 // Expected accessible state. Checked against IAccessible::get_accState.
411 LONG state_; 415 LONG state_;
412 416
413 // Expected accessible children. Checked using IAccessible::get_accChildCount 417 // Expected accessible children. Checked using IAccessible::get_accChildCount
414 // and ::AccessibleChildren. 418 // and ::AccessibleChildren.
415 AccessibleCheckerVector children_; 419 AccessibleCheckerVector children_;
416 }; 420 };
417 421
418 AccessibilityWinBrowserTest::AccessibleChecker::AccessibleChecker( 422 AccessibilityWinBrowserTest::AccessibleChecker::AccessibleChecker(
419 const std::wstring& expected_name, 423 const std::wstring& expected_name,
420 int32 expected_role, 424 int32_t expected_role,
421 const std::wstring& expected_value) 425 const std::wstring& expected_value)
422 : name_(expected_name), 426 : name_(expected_name),
423 role_(expected_role), 427 role_(expected_role),
424 ia2_role_(expected_role), 428 ia2_role_(expected_role),
425 value_(expected_value), 429 value_(expected_value),
426 state_(-1) { 430 state_(-1) {}
427 }
428 431
429 AccessibilityWinBrowserTest::AccessibleChecker::AccessibleChecker( 432 AccessibilityWinBrowserTest::AccessibleChecker::AccessibleChecker(
430 const std::wstring& expected_name, 433 const std::wstring& expected_name,
431 int32 expected_role, 434 int32_t expected_role,
432 int32 expected_ia2_role, 435 int32_t expected_ia2_role,
433 const std::wstring& expected_value) 436 const std::wstring& expected_value)
434 : name_(expected_name), 437 : name_(expected_name),
435 role_(expected_role), 438 role_(expected_role),
436 ia2_role_(expected_ia2_role), 439 ia2_role_(expected_ia2_role),
437 value_(expected_value), 440 value_(expected_value),
438 state_(-1) { 441 state_(-1) {}
439 }
440 442
441 AccessibilityWinBrowserTest::AccessibleChecker::AccessibleChecker( 443 AccessibilityWinBrowserTest::AccessibleChecker::AccessibleChecker(
442 const std::wstring& expected_name, 444 const std::wstring& expected_name,
443 const std::wstring& expected_role, 445 const std::wstring& expected_role,
444 int32 expected_ia2_role, 446 int32_t expected_ia2_role,
445 const std::wstring& expected_value) 447 const std::wstring& expected_value)
446 : name_(expected_name), 448 : name_(expected_name),
447 role_(expected_role.c_str()), 449 role_(expected_role.c_str()),
448 ia2_role_(expected_ia2_role), 450 ia2_role_(expected_ia2_role),
449 value_(expected_value), 451 value_(expected_value),
450 state_(-1) { 452 state_(-1) {}
451 }
452 453
453 void AccessibilityWinBrowserTest::AccessibleChecker::AppendExpectedChild( 454 void AccessibilityWinBrowserTest::AccessibleChecker::AppendExpectedChild(
454 AccessibleChecker* expected_child) { 455 AccessibleChecker* expected_child) {
455 children_.push_back(expected_child); 456 children_.push_back(expected_child);
456 } 457 }
457 458
458 void AccessibilityWinBrowserTest::AccessibleChecker::CheckAccessible( 459 void AccessibilityWinBrowserTest::AccessibleChecker::CheckAccessible(
459 IAccessible* accessible) { 460 IAccessible* accessible) {
460 SCOPED_TRACE("While checking " 461 SCOPED_TRACE("While checking "
461 + base::UTF16ToUTF8(RoleVariantToString(role_))); 462 + base::UTF16ToUTF8(RoleVariantToString(role_)));
(...skipping 999 matching lines...) Expand 10 before | Expand all | Expand 10 after
1461 IN_PROC_BROWSER_TEST_F(AccessibilityWinBrowserTest, 1462 IN_PROC_BROWSER_TEST_F(AccessibilityWinBrowserTest,
1462 TestMultiLineTextAtOffsetWithBoundaryAll) { 1463 TestMultiLineTextAtOffsetWithBoundaryAll) {
1463 base::win::ScopedComPtr<IAccessibleText> textarea_text; 1464 base::win::ScopedComPtr<IAccessibleText> textarea_text;
1464 SetUpTextareaField(&textarea_text); 1465 SetUpTextareaField(&textarea_text);
1465 1466
1466 CheckTextAtOffset(textarea_text, CONTENTS_LENGTH - 1, IA2_TEXT_BOUNDARY_ALL, 1467 CheckTextAtOffset(textarea_text, CONTENTS_LENGTH - 1, IA2_TEXT_BOUNDARY_ALL,
1467 0, CONTENTS_LENGTH, base::SysUTF8ToWide(TEXTAREA_CONTENTS)); 1468 0, CONTENTS_LENGTH, base::SysUTF8ToWide(TEXTAREA_CONTENTS));
1468 } 1469 }
1469 1470
1470 } // namespace content 1471 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/accessibility/accessibility_ui.h ('k') | content/browser/accessibility/ax_tree_id_registry.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698