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

Unified Diff: ui/android/view_android_unittest.cc

Issue 2702413004: Revert "ViewRoot class for event forwarding on Android" (Closed)
Patch Set: Created 3 years, 10 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
« no previous file with comments | « ui/android/view_android.cc ('k') | ui/android/view_client.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/android/view_android_unittest.cc
diff --git a/ui/android/view_android_unittest.cc b/ui/android/view_android_unittest.cc
deleted file mode 100644
index e4500b565603fa34452c00b737de712c94c12574..0000000000000000000000000000000000000000
--- a/ui/android/view_android_unittest.cc
+++ /dev/null
@@ -1,167 +0,0 @@
-// Copyright 2017 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/android/view_root.h"
-
-namespace ui {
-
-using base::android::JavaParamRef;
-
-class TestViewRoot : public ViewRoot {
- public:
- TestViewRoot() : ViewRoot(0L) {}
- float GetDipScale() override { return 1.f; }
-};
-
-class TestViewClient : public ViewClient {
- public:
- TestViewClient() : handle_event_(true),
- called_(false) {}
-
- void SetHandleEvent(bool handle_event) { handle_event_ = handle_event; }
- bool OnTouchEvent(const MotionEventData& event) override {
- called_ = true;
- return handle_event_;
- }
-
- bool EventHandled() { return called_ && handle_event_; }
- void Reset() { called_ = false; }
-
- private:
- bool handle_event_; // Marks as event was consumed. True by default.
- bool called_;
-};
-
-class ViewAndroidBoundsTest : public testing::Test {
- public:
- ViewAndroidBoundsTest() : view1_(&client1_),
- view2_(&client2_),
- view3_(&client3_) {}
- void Reset() {
- client1_.Reset();
- client2_.Reset();
- client3_.Reset();
- }
-
- void GenerateTouchEventAt(float x, float y) {
- root_.OnTouchEvent(nullptr,
- JavaParamRef<jobject>(nullptr),
- JavaParamRef<jobject>(nullptr),
- 0L, // time
- 0, 1, 0, 0,
- x, y, 0.f, 0.f, // pos
- 0, 0, // pointer_id
- 0.f, 0.f, 0.f, 0.f, // touch
- 0.f, 0.f, 0.f, 0.f,
- 0.f, 0.f,
- 0, 0, 0, 0,
- false);
- }
-
- void ExpectHit(const TestViewClient& hitClient) {
- TestViewClient* clients[3] = { &client1_, &client2_, &client3_ };
- for (auto& client : clients) {
- if (&hitClient == client)
- EXPECT_TRUE(client->EventHandled());
- else
- EXPECT_FALSE(client->EventHandled());
- }
- Reset();
- }
-
- TestViewRoot root_;
- TestViewClient client1_;
- TestViewClient client2_;
- TestViewClient client3_;
- ViewAndroid view1_;
- ViewAndroid view2_;
- ViewAndroid view3_;
-};
-
-TEST_F(ViewAndroidBoundsTest, MatchesViewInFront) {
- view1_.SetLayout(50, 50, 400, 600, false);
- view2_.SetLayout(50, 50, 400, 600, false);
- root_.AddChild(&view2_);
- root_.AddChild(&view1_);
-
- GenerateTouchEventAt(100.f, 100.f);
- ExpectHit(client1_);
-
- // View 2 moves up to the top, and events should hit it from now.
- root_.MoveToTop(&view2_);
- GenerateTouchEventAt(100.f, 100.f);
- ExpectHit(client2_);
-}
-
-TEST_F(ViewAndroidBoundsTest, MatchesViewArea) {
- view1_.SetLayout(50, 50, 200, 200, false);
- view2_.SetLayout(20, 20, 400, 600, false);
-
- root_.AddChild(&view2_);
- root_.AddChild(&view1_);
-
- // Falls within |view1_|'s bounds
- GenerateTouchEventAt(100.f, 100.f);
- ExpectHit(client1_);
-
- // Falls within |view2_|'s bounds
- GenerateTouchEventAt(300.f, 400.f);
- ExpectHit(client2_);
-}
-
-TEST_F(ViewAndroidBoundsTest, MatchesViewAfterMove) {
- view1_.SetLayout(50, 50, 200, 200, false);
- view2_.SetLayout(20, 20, 400, 600, false);
- root_.AddChild(&view2_);
- root_.AddChild(&view1_);
-
- GenerateTouchEventAt(100.f, 100.f);
- ExpectHit(client1_);
-
- view1_.SetLayout(150, 150, 200, 200, false);
- GenerateTouchEventAt(100.f, 100.f);
- ExpectHit(client2_);
-}
-
-TEST_F(ViewAndroidBoundsTest, MatchesViewSizeOfkMatchParent) {
- view1_.SetLayout(20, 20, 400, 600, false);
- view3_.SetLayout(0, 0, 0, 0, true); // match parent
- view2_.SetLayout(50, 50, 200, 200, false);
-
- root_.AddChild(&view1_);
- root_.AddChild(&view2_);
- view1_.AddChild(&view3_);
-
- GenerateTouchEventAt(100.f, 100.f);
- ExpectHit(client2_);
-
- GenerateTouchEventAt(300.f, 400.f);
- ExpectHit(client3_);
-
- client3_.SetHandleEvent(false);
- GenerateTouchEventAt(300.f, 400.f);
- ExpectHit(client1_);
-}
-
-TEST_F(ViewAndroidBoundsTest, MatchesViewsWithOffset) {
- view1_.SetLayout(10, 20, 150, 100, false);
- view2_.SetLayout(20, 30, 40, 30, false);
- view3_.SetLayout(70, 30, 40, 30, false);
-
- root_.AddChild(&view1_);
- view1_.AddChild(&view2_);
- view1_.AddChild(&view3_);
-
- GenerateTouchEventAt(70, 30);
- ExpectHit(client1_);
-
- GenerateTouchEventAt(40, 60);
- ExpectHit(client2_);
-
- GenerateTouchEventAt(100, 70);
- ExpectHit(client3_);
-}
-
-} // namespace ui
« no previous file with comments | « ui/android/view_android.cc ('k') | ui/android/view_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698