| Index: chrome/android/javatests/src/org/chromium/chrome/browser/widget/BottomSheetObserverTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/widget/BottomSheetObserverTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/widget/BottomSheetObserverTest.java
|
| deleted file mode 100644
|
| index 36a85d2b0ec57ae285938f9a69f1309500541edc..0000000000000000000000000000000000000000
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/widget/BottomSheetObserverTest.java
|
| +++ /dev/null
|
| @@ -1,228 +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.
|
| -
|
| -package org.chromium.chrome.browser.widget;
|
| -
|
| -import android.support.test.filters.MediumTest;
|
| -
|
| -import org.chromium.base.test.util.CallbackHelper;
|
| -import org.chromium.chrome.browser.util.MathUtils;
|
| -import org.chromium.chrome.test.BottomSheetTestCaseBase;
|
| -
|
| -import java.util.concurrent.TimeoutException;
|
| -
|
| -/** This class tests the functionality of the {@link BottomSheetObserver}. */
|
| -public class BottomSheetObserverTest extends BottomSheetTestCaseBase {
|
| - /** A handle to the sheet's observer. */
|
| - private TestBottomSheetObserver mObserver;
|
| -
|
| - /** An observer used to record events that occur with respect to the bottom sheet. */
|
| - private static class TestBottomSheetObserver implements BottomSheetObserver {
|
| - /** A {@link CallbackHelper} that can wait for the bottom sheet to be closed. */
|
| - private final CallbackHelper mClosedCallbackHelper = new CallbackHelper();
|
| -
|
| - /** A {@link CallbackHelper} that can wait for the bottom sheet to be opened. */
|
| - private final CallbackHelper mOpenedCallbackHelper = new CallbackHelper();
|
| -
|
| - /** A {@link CallbackHelper} that can wait for the onTransitionPeekToHalf event. */
|
| - private final CallbackHelper mPeekToHalfCallbackHelper = new CallbackHelper();
|
| -
|
| - /** A {@link CallbackHelper} that can wait for the onOffsetChanged event. */
|
| - private final CallbackHelper mOffsetChangedCallbackHelper = new CallbackHelper();
|
| -
|
| - /** The last value that the onTransitionPeekToHalf event sent. */
|
| - private float mLastPeekToHalfValue;
|
| -
|
| - /** The last value that the onOffsetChanged event sent. */
|
| - private float mLastOffsetChangedValue;
|
| -
|
| - @Override
|
| - public void onTransitionPeekToHalf(float fraction) {
|
| - mLastPeekToHalfValue = fraction;
|
| - mPeekToHalfCallbackHelper.notifyCalled();
|
| - }
|
| -
|
| - @Override
|
| - public void onSheetOffsetChanged(float heightFraction) {
|
| - mLastOffsetChangedValue = heightFraction;
|
| - mOffsetChangedCallbackHelper.notifyCalled();
|
| - }
|
| -
|
| - @Override
|
| - public void onSheetOpened() {
|
| - mOpenedCallbackHelper.notifyCalled();
|
| - }
|
| -
|
| - @Override
|
| - public void onSheetClosed() {
|
| - mClosedCallbackHelper.notifyCalled();
|
| - }
|
| -
|
| - @Override
|
| - public void onLoadUrl(String url) {}
|
| - }
|
| -
|
| - @Override
|
| - protected void setUp() throws Exception {
|
| - super.setUp();
|
| -
|
| - mObserver = new TestBottomSheetObserver();
|
| - mBottomSheet.addObserver(mObserver);
|
| - }
|
| -
|
| - /**
|
| - * Test that the onSheetClosed event is triggered if the sheet is closed without animation.
|
| - */
|
| - @MediumTest
|
| - public void testCloseEventCalledNoAnimation() throws InterruptedException, TimeoutException {
|
| - setSheetState(BottomSheet.SHEET_STATE_FULL, false);
|
| -
|
| - CallbackHelper closedCallbackHelper = mObserver.mClosedCallbackHelper;
|
| -
|
| - int initialOpenedCount = mObserver.mOpenedCallbackHelper.getCallCount();
|
| -
|
| - int closedCallbackCount = closedCallbackHelper.getCallCount();
|
| - setSheetState(BottomSheet.SHEET_STATE_PEEK, false);
|
| - closedCallbackHelper.waitForCallback(closedCallbackCount, 1);
|
| -
|
| - assertEquals(initialOpenedCount, mObserver.mOpenedCallbackHelper.getCallCount());
|
| - }
|
| -
|
| - /**
|
| - * Test that the onSheetClosed event is triggered if the sheet is closed with animation.
|
| - */
|
| - @MediumTest
|
| - public void testCloseEventCalledWithAnimation() throws InterruptedException, TimeoutException {
|
| - setSheetState(BottomSheet.SHEET_STATE_FULL, false);
|
| -
|
| - CallbackHelper closedCallbackHelper = mObserver.mClosedCallbackHelper;
|
| -
|
| - int initialOpenedCount = mObserver.mOpenedCallbackHelper.getCallCount();
|
| -
|
| - int closedCallbackCount = closedCallbackHelper.getCallCount();
|
| - setSheetState(BottomSheet.SHEET_STATE_PEEK, true);
|
| - closedCallbackHelper.waitForCallback(closedCallbackCount, 1);
|
| -
|
| - assertEquals(initialOpenedCount, mObserver.mOpenedCallbackHelper.getCallCount());
|
| - }
|
| -
|
| - /**
|
| - * Test that the onSheetOpened event is triggered if the sheet is opened without animation.
|
| - */
|
| - @MediumTest
|
| - public void testOpenedEventCalledNoAnimation() throws InterruptedException, TimeoutException {
|
| - setSheetState(BottomSheet.SHEET_STATE_PEEK, false);
|
| -
|
| - CallbackHelper openedCallbackHelper = mObserver.mOpenedCallbackHelper;
|
| -
|
| - int initialClosedCount = mObserver.mClosedCallbackHelper.getCallCount();
|
| -
|
| - int openedCallbackCount = openedCallbackHelper.getCallCount();
|
| - setSheetState(BottomSheet.SHEET_STATE_FULL, false);
|
| - openedCallbackHelper.waitForCallback(openedCallbackCount, 1);
|
| -
|
| - assertEquals(initialClosedCount, mObserver.mClosedCallbackHelper.getCallCount());
|
| - }
|
| -
|
| - /**
|
| - * Test that the onSheetOpened event is triggered if the sheet is opened with animation.
|
| - */
|
| - @MediumTest
|
| - public void testOpenedEventCalledWithAnimation() throws InterruptedException, TimeoutException {
|
| - setSheetState(BottomSheet.SHEET_STATE_PEEK, false);
|
| -
|
| - CallbackHelper openedCallbackHelper = mObserver.mOpenedCallbackHelper;
|
| -
|
| - int initialClosedCount = mObserver.mClosedCallbackHelper.getCallCount();
|
| -
|
| - int openedCallbackCount = openedCallbackHelper.getCallCount();
|
| - setSheetState(BottomSheet.SHEET_STATE_FULL, true);
|
| - openedCallbackHelper.waitForCallback(openedCallbackCount, 1);
|
| -
|
| - assertEquals(initialClosedCount, mObserver.mClosedCallbackHelper.getCallCount());
|
| - }
|
| -
|
| - /**
|
| - * Test the onOffsetChanged event.
|
| - */
|
| - @MediumTest
|
| - public void testOffsetChangedEvent() throws InterruptedException, TimeoutException {
|
| - CallbackHelper callbackHelper = mObserver.mOffsetChangedCallbackHelper;
|
| -
|
| - float peekHeight = mBottomSheet.getPeekRatio() * mBottomSheet.getSheetContainerHeight();
|
| - float fullHeight = mBottomSheet.getFullRatio() * mBottomSheet.getSheetContainerHeight();
|
| -
|
| - // The sheet's half state is not necessarily 50% of the way to the top.
|
| - float midPeekFull = (peekHeight + fullHeight) / 2f;
|
| -
|
| - // When in the peeking state, the transition value should be 0.
|
| - int callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(peekHeight);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(0f, mObserver.mLastOffsetChangedValue, MathUtils.EPSILON);
|
| -
|
| - // When in the full state, the transition value should be 1.
|
| - callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(fullHeight);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(1f, mObserver.mLastOffsetChangedValue, MathUtils.EPSILON);
|
| -
|
| - // Halfway between peek and full should send 0.5.
|
| - callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(midPeekFull);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(0.5f, mObserver.mLastOffsetChangedValue, MathUtils.EPSILON);
|
| - }
|
| -
|
| - /**
|
| - * Test the onTransitionPeekToHalf event.
|
| - */
|
| - @MediumTest
|
| - public void testPeekToHalfTransition() throws InterruptedException, TimeoutException {
|
| - CallbackHelper callbackHelper = mObserver.mPeekToHalfCallbackHelper;
|
| -
|
| - float peekHeight = mBottomSheet.getPeekRatio() * mBottomSheet.getSheetContainerHeight();
|
| - float halfHeight = mBottomSheet.getHalfRatio() * mBottomSheet.getSheetContainerHeight();
|
| - float fullHeight = mBottomSheet.getFullRatio() * mBottomSheet.getSheetContainerHeight();
|
| -
|
| - float midPeekHalf = (peekHeight + halfHeight) / 2f;
|
| - float midHalfFull = (halfHeight + fullHeight) / 2f;
|
| -
|
| - // When in the peeking state, the transition value should be 0.
|
| - int callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(peekHeight);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(0f, mObserver.mLastPeekToHalfValue, MathUtils.EPSILON);
|
| -
|
| - // When in between peek and half states, the transition value should be 0.5.
|
| - callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(midPeekHalf);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(0.5f, mObserver.mLastPeekToHalfValue, MathUtils.EPSILON);
|
| -
|
| - // After jumping to the full state (skipping the half state), the event should have
|
| - // triggered once more with a max value of 1.
|
| - callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(fullHeight);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(1f, mObserver.mLastPeekToHalfValue, MathUtils.EPSILON);
|
| -
|
| - // Moving from full to somewhere between half and full should not trigger the event.
|
| - callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(midHalfFull);
|
| - assertEquals(callbackCount, callbackHelper.getCallCount());
|
| -
|
| - // Reset the sheet to be between peek and half states.
|
| - callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(midPeekHalf);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(0.5f, mObserver.mLastPeekToHalfValue, MathUtils.EPSILON);
|
| -
|
| - // At the half state the event should send 1.
|
| - callbackCount = callbackHelper.getCallCount();
|
| - setSheetOffsetFromBottom(halfHeight);
|
| - callbackHelper.waitForCallback(callbackCount, 1);
|
| - assertEquals(1f, mObserver.mLastPeekToHalfValue, MathUtils.EPSILON);
|
| - }
|
| -}
|
|
|