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

Side by Side Diff: ui/events/blink/web_input_event_unittest.cc

Issue 2270953002: Merge the mojo blink type converter into ui/events/blink (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase apparently restored deleted files Created 4 years, 3 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
« no previous file with comments | « ui/events/blink/web_input_event.cc ('k') | ui/events/event.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "ui/events/blink/web_input_event.h" 5 #include "ui/events/blink/web_input_event.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 469 matching lines...) Expand 10 before | Expand all | Expand 10 after
480 gfx::Point(123, 321), gfx::Point(123, 321), 480 gfx::Point(123, 321), gfx::Point(123, 321),
481 timestamp, 0, 0); 481 timestamp, 0, 0);
482 blink::WebMouseWheelEvent webkit_event = MakeWebMouseWheelEvent( 482 blink::WebMouseWheelEvent webkit_event = MakeWebMouseWheelEvent(
483 ui_event, base::Bind(&GetScreenLocationFromEvent)); 483 ui_event, base::Bind(&GetScreenLocationFromEvent));
484 EXPECT_EQ(EventFlagsToWebEventModifiers(ui_event.flags()), 484 EXPECT_EQ(EventFlagsToWebEventModifiers(ui_event.flags()),
485 webkit_event.modifiers); 485 webkit_event.modifiers);
486 EXPECT_FLOAT_EQ(EventTimeStampToSeconds(timestamp), 486 EXPECT_FLOAT_EQ(EventTimeStampToSeconds(timestamp),
487 webkit_event.timeStampSeconds); 487 webkit_event.timeStampSeconds);
488 EXPECT_EQ(blink::WebMouseEvent::Button::NoButton, webkit_event.button); 488 EXPECT_EQ(blink::WebMouseEvent::Button::NoButton, webkit_event.button);
489 EXPECT_EQ(blink::WebInputEvent::MouseWheel, webkit_event.type); 489 EXPECT_EQ(blink::WebInputEvent::MouseWheel, webkit_event.type);
490 EXPECT_FLOAT_EQ(ui_event.x_offset() / 53.0f, webkit_event.wheelTicksX); 490 EXPECT_FLOAT_EQ(ui_event.x_offset() / MouseWheelEvent::kWheelDelta,
491 EXPECT_FLOAT_EQ(ui_event.y_offset() / 53.0f, webkit_event.wheelTicksY); 491 webkit_event.wheelTicksX);
492 EXPECT_FLOAT_EQ(ui_event.y_offset() / MouseWheelEvent::kWheelDelta,
493 webkit_event.wheelTicksY);
492 EXPECT_EQ(blink::WebPointerProperties::PointerType::Mouse, 494 EXPECT_EQ(blink::WebPointerProperties::PointerType::Mouse,
493 webkit_event.pointerType); 495 webkit_event.pointerType);
494 EXPECT_EQ(0, webkit_event.tiltX); 496 EXPECT_EQ(0, webkit_event.tiltX);
495 EXPECT_EQ(0, webkit_event.tiltY); 497 EXPECT_EQ(0, webkit_event.tiltY);
496 EXPECT_TRUE(std::isnan(webkit_event.force)); 498 EXPECT_TRUE(std::isnan(webkit_event.force));
497 EXPECT_EQ(123, webkit_event.x); 499 EXPECT_EQ(123, webkit_event.x);
498 EXPECT_EQ(123, webkit_event.windowX); 500 EXPECT_EQ(123, webkit_event.windowX);
499 EXPECT_EQ(321, webkit_event.y); 501 EXPECT_EQ(321, webkit_event.y);
500 EXPECT_EQ(321, webkit_event.windowY); 502 EXPECT_EQ(321, webkit_event.windowY);
501 } 503 }
502 { 504 {
503 // Mouse wheel with shift and no x offset. 505 // Mouse wheel with shift and no x offset.
504 base::TimeTicks timestamp = EventTimeForNow(); 506 base::TimeTicks timestamp = EventTimeForNow();
505 MouseWheelEvent ui_event( 507 MouseWheelEvent ui_event(
506 gfx::Vector2d(0, -MouseWheelEvent::kWheelDelta * 2), 508 gfx::Vector2d(0, -MouseWheelEvent::kWheelDelta * 2),
507 gfx::Point(123, 321), gfx::Point(123, 321), timestamp, EF_SHIFT_DOWN, 509 gfx::Point(123, 321), gfx::Point(123, 321), timestamp, EF_SHIFT_DOWN,
508 0); 510 0);
509 blink::WebMouseWheelEvent webkit_event = MakeWebMouseWheelEvent( 511 blink::WebMouseWheelEvent webkit_event = MakeWebMouseWheelEvent(
510 ui_event, base::Bind(&GetScreenLocationFromEvent)); 512 ui_event, base::Bind(&GetScreenLocationFromEvent));
511 EXPECT_EQ(EventFlagsToWebEventModifiers(ui_event.flags()), 513 EXPECT_EQ(EventFlagsToWebEventModifiers(ui_event.flags()),
512 webkit_event.modifiers); 514 webkit_event.modifiers);
513 EXPECT_FLOAT_EQ(EventTimeStampToSeconds(timestamp), 515 EXPECT_FLOAT_EQ(EventTimeStampToSeconds(timestamp),
514 webkit_event.timeStampSeconds); 516 webkit_event.timeStampSeconds);
515 EXPECT_EQ(blink::WebMouseEvent::Button::NoButton, webkit_event.button); 517 EXPECT_EQ(blink::WebMouseEvent::Button::NoButton, webkit_event.button);
516 EXPECT_EQ(blink::WebInputEvent::MouseWheel, webkit_event.type); 518 EXPECT_EQ(blink::WebInputEvent::MouseWheel, webkit_event.type);
517 EXPECT_FLOAT_EQ(ui_event.y_offset() / 53.0f, webkit_event.wheelTicksX); 519 EXPECT_FLOAT_EQ(ui_event.y_offset() / MouseWheelEvent::kWheelDelta,
520 webkit_event.wheelTicksX);
518 EXPECT_FLOAT_EQ(0, webkit_event.wheelTicksY); 521 EXPECT_FLOAT_EQ(0, webkit_event.wheelTicksY);
519 EXPECT_EQ(blink::WebPointerProperties::PointerType::Mouse, 522 EXPECT_EQ(blink::WebPointerProperties::PointerType::Mouse,
520 webkit_event.pointerType); 523 webkit_event.pointerType);
521 EXPECT_EQ(0, webkit_event.tiltX); 524 EXPECT_EQ(0, webkit_event.tiltX);
522 EXPECT_EQ(0, webkit_event.tiltY); 525 EXPECT_EQ(0, webkit_event.tiltY);
523 EXPECT_TRUE(std::isnan(webkit_event.force)); 526 EXPECT_TRUE(std::isnan(webkit_event.force));
524 EXPECT_EQ(123, webkit_event.x); 527 EXPECT_EQ(123, webkit_event.x);
525 EXPECT_EQ(123, webkit_event.windowX); 528 EXPECT_EQ(123, webkit_event.windowX);
526 EXPECT_EQ(321, webkit_event.y); 529 EXPECT_EQ(321, webkit_event.y);
527 EXPECT_EQ(321, webkit_event.windowY); 530 EXPECT_EQ(321, webkit_event.windowY);
528 } 531 }
529 } 532 }
530 533
534 TEST(WebInputEventTest, KeyEvent) {
535 struct {
536 ui::KeyEvent event;
537 blink::WebInputEvent::Type web_type;
538 int web_modifiers;
539 } tests[] = {
540 {ui::KeyEvent(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE),
541 blink::WebInputEvent::RawKeyDown, 0x0},
542 {ui::KeyEvent(L'B', ui::VKEY_B, ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN),
543 blink::WebInputEvent::Char,
544 blink::WebInputEvent::ShiftKey | blink::WebInputEvent::ControlKey},
545 {ui::KeyEvent(ui::ET_KEY_RELEASED, ui::VKEY_C, ui::EF_ALT_DOWN),
546 blink::WebInputEvent::KeyUp, blink::WebInputEvent::AltKey}};
547
548 for (size_t i = 0; i < arraysize(tests); i++) {
549 blink::WebKeyboardEvent web_event = MakeWebKeyboardEvent(tests[i].event);
550 ASSERT_TRUE(blink::WebInputEvent::isKeyboardEventType(web_event.type));
551 ASSERT_EQ(tests[i].web_type, web_event.type);
552 ASSERT_EQ(tests[i].web_modifiers, web_event.modifiers);
553 ASSERT_EQ(static_cast<int>(tests[i].event.GetLocatedWindowsKeyboardCode()),
554 web_event.windowsKeyCode);
555 }
556 }
557
558 TEST(WebInputEventTest, WheelEvent) {
559 const int kDeltaX = 14;
560 const int kDeltaY = -3;
561 ui::MouseWheelEvent ui_event(
562 ui::MouseEvent(ui::ET_UNKNOWN, gfx::Point(), gfx::Point(),
563 base::TimeTicks(), 0, 0),
564 kDeltaX, kDeltaY);
565 blink::WebMouseWheelEvent web_event =
566 MakeWebMouseWheelEvent(ui_event, base::Bind(&GetScreenLocationFromEvent));
567 ASSERT_EQ(blink::WebInputEvent::MouseWheel, web_event.type);
568 ASSERT_EQ(0, web_event.modifiers);
569 ASSERT_EQ(kDeltaX, web_event.deltaX);
570 ASSERT_EQ(kDeltaY, web_event.deltaY);
571 }
572
573 TEST(WebInputEventTest, MousePointerEvent) {
574 struct {
575 ui::EventType ui_type;
576 blink::WebInputEvent::Type web_type;
577 int ui_modifiers;
578 int web_modifiers;
579 gfx::Point location;
580 gfx::Point screen_location;
581 } tests[] = {
582 {ui::ET_MOUSE_PRESSED, blink::WebInputEvent::MouseDown, 0x0, 0x0,
583 gfx::Point(3, 5), gfx::Point(113, 125)},
584 {ui::ET_MOUSE_RELEASED, blink::WebInputEvent::MouseUp,
585 ui::EF_LEFT_MOUSE_BUTTON, blink::WebInputEvent::LeftButtonDown,
586 gfx::Point(100, 1), gfx::Point(50, 1)},
587 {ui::ET_MOUSE_MOVED, blink::WebInputEvent::MouseMove,
588 ui::EF_MIDDLE_MOUSE_BUTTON | ui::EF_RIGHT_MOUSE_BUTTON,
589 blink::WebInputEvent::MiddleButtonDown |
590 blink::WebInputEvent::RightButtonDown,
591 gfx::Point(13, 3), gfx::Point(53, 3)},
592 };
593
594 for (size_t i = 0; i < arraysize(tests); i++) {
595 ui::MouseEvent ui_event(tests[i].ui_type, tests[i].location,
596 tests[i].screen_location, base::TimeTicks(),
597 tests[i].ui_modifiers, 0);
598 blink::WebMouseEvent web_event =
599 MakeWebMouseEvent(ui_event, base::Bind(&GetScreenLocationFromEvent));
600 ASSERT_TRUE(blink::WebInputEvent::isMouseEventType(web_event.type));
601 ASSERT_EQ(tests[i].web_type, web_event.type);
602 ASSERT_EQ(tests[i].web_modifiers, web_event.modifiers);
603 ASSERT_EQ(tests[i].location.x(), web_event.x);
604 ASSERT_EQ(tests[i].location.y(), web_event.y);
605 ASSERT_EQ(tests[i].screen_location.x(), web_event.globalX);
606 ASSERT_EQ(tests[i].screen_location.y(), web_event.globalY);
607 }
608 }
609
531 } // namespace ui 610 } // namespace ui
OLDNEW
« no previous file with comments | « ui/events/blink/web_input_event.cc ('k') | ui/events/event.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698