New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 673917 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Feature

Blocked on:
issue 640116



Sign in to add a comment

Move and restructure ChromeRestrictions to allow them to be used in any test with the necessary dependencies

Project Member Reported by jbudorick@chromium.org, Dec 13 2016

Issue description

observation from https://codereview.chromium.org/2573983002/: the form factor restrictions in ChromeRestriction are supported by org.chromium.ui.base.DeviceFormFactor. They should be usable by anything that otherwise depends on //ui. We should look at the other restrictions in ChromeRestriction similarly.

This probably can/should wait until after the big JUnit4 switch, as it'd require some medium-sized refactoring to support.
 
Components: Test>Android
Labels: -Type-Bug -Pri-3 OS-Android Pri-2 Type-Feature
Cc: mlamouri@chromium.org
Maybe the restrictions should move to content/?

Comment 3 Deleted

Why //content rather than //ui?
Don't we have restrictions that are not UI specific such as low end device? Though, maybe //base should define the notion of restrictions and different layers create different restrictions. I agree that it would make sense for the form factor restriction to be defined in //ui.
We do (among others), and those are in //base: https://codesearch.chromium.org/chromium/src/base/test/android/javatests/src/org/chromium/base/test/util/Restriction.java

... while everything that can't be implemented in //base is currently in //chrome.
Ahah. I'm glad my imaginary design and the real thing are matching :P

Having the device form factor in //ui lgtm then :)
Owner: jbudorick@chromium.org
Status: Assigned (was: Untriaged)
 Issue 719560  has been merged into this issue.
Cc: jbudorick@chromium.org
Owner: shenghua...@chromium.org
Cc: yolandyan@chromium.org
After discussing with +shenghuazhang, out of curiosity, I wonder why we can't just move DeviceFormFactor.java to //base (or at least the implementation of it), so that ChromeRestrictions can be moved to base as well.

Since moving the ChromeRestrictions to ui would means the requirement of creating a new build target, and any test that depends on that that restriction would have to depends on that target.
Cc: tedc...@chromium.org
I would guess that it makes more conceptual sense in //ui, but I'm hardly an expert here. maybe +tedchoc can give a better answer since he's an owner in //ui/android and //base/android.

Re adding a ui_java_test_support target: yeah, that wouldn't be much a burden.
Project Member

Comment 13 by bugdroid1@chromium.org, Aug 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cac866dc96dea44774db2ff79cc6990527fbb192

commit cac866dc96dea44774db2ff79cc6990527fbb192
Author: Shenghua Zhang <shenghuazhang@chromium.org>
Date: Tue Aug 29 01:30:55 2017

[Restriction] Move device form factor Restrictions from //chrome to //ui

The form factor restrictions in ChromeRestriction.java used as
@Restriction(RESTRICTION_TYPE_PHONE) are only used in //chrome. This CL
moves the Restrictions to //ui, so that any file depending on //ui could
use them.

Bug:  673917 
Change-Id: Ic8b42e081069be8f9bffeb933915e0fc64b92e92
Reviewed-on: https://chromium-review.googlesource.com/604756
Reviewed-by: Yoland Yan <yolandyan@chromium.org>
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Commit-Queue: Shenghua Zhang <shenghuazhang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#497976}
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/BUILD.gn
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/ContentViewFocusTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/ExampleUiCaptureTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/NavigateTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/TabCountLabelTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/TabThemeTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/TabsTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/appmenu/ChromeHomeAppMenuTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/compositor/overlays/strip/TabStripTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/contextualsearch/ContextualSearchManagerTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabActivityTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/dom_distiller/DistillabilityServiceTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadActivityTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/externalnav/UrlOverridingTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/history/HistoryActivityTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/media/router/MediaRouterIntegrationTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/ntp/cards/NewTabPageRecyclerViewTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/omaha/UpdateMenuItemHelperTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/search_engines/TemplateUrlServiceTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/suggestions/HomeSheetTilesUiCaptureTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/suggestions/HomeSheetUiCaptureTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/suggestions/SuggestionsBottomSheetTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/suggestions/SuggestionsBottomSheetUiCaptureTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabModelMergingTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/UndoTabModelTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/toolbar/BrandColorTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/toolbar/ToolbarTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/widget/OverviewListLayoutTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/widget/ToolbarProgressBarTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheetBackBehaviorTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheetContentControllerTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheetNewTabControllerTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/android/javatests/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheetObserverTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/test/android/BUILD.gn
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/test/android/javatests/src/org/chromium/chrome/test/ChromeInstrumentationTestRunner.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/test/android/javatests/src/org/chromium/chrome/test/ChromeJUnit4ClassRunner.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/chrome/test/android/javatests/src/org/chromium/chrome/test/util/ChromeRestriction.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/content/public/android/BUILD.gn
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/content/public/android/javatests/src/org/chromium/content/browser/VideoFullscreenOrientationLockTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/content/public/android/javatests/src/org/chromium/content/browser/VideoRotateToFullscreenTest.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/content/public/test/android/BUILD.gn
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/content/public/test/android/javatests/src/org/chromium/content/browser/test/ContentJUnit4ClassRunner.java
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/testing/android/docs/instrumentation.md
[modify] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/ui/android/BUILD.gn
[rename] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/ui/android/javatests/src/org/chromium/ui/test/util/UiDisableIf.java
[add] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/ui/android/javatests/src/org/chromium/ui/test/util/UiDisableIfSkipCheck.java
[add] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/ui/android/javatests/src/org/chromium/ui/test/util/UiRestriction.java
[add] https://crrev.com/cac866dc96dea44774db2ff79cc6990527fbb192/ui/android/javatests/src/org/chromium/ui/test/util/UiRestrictionSkipCheck.java

Status: Fixed (was: Assigned)
Moved DeviceFormFactor restrictions and disableif from //chrome to //ui. Mark this bug fixed.

Sign in to add a comment