Commit db3378c8 authored by Henrique Nakashima's avatar Henrique Nakashima Committed by Commit Bot

Reland "Modularize DeviceConditions to chrome/browser/device"

This is a reland of 7cf7dadf

Fixes: https://chromium-review.googlesource.com/c/chromium/src/+/2432754/2..3

device_junit_tests is also the name of a junit_binary, and cannot be
used as the target name. Not sure why CQ didn't catch this last time,
confirmed locally that was the problem.

Original change's description:
> Modularize DeviceConditions to chrome/browser/device
>
> This is a step to unblock some classes that depend on it (list below)
> and allow modularized code to reuse it.
>
> 11 inbound dependency(ies) into .c.b.DeviceConditions:
>     [chrome_java]
>         <- .c.b.background_sync.BackgroundSyncBackgroundTask
>         <- .c.b.background_sync.PeriodicBackgroundSyncChromeWakeUpTask
>         <- .c.b.download.DownloadInfoBarController
>         <- .c.b.explore_sites.ExploreSitesBackgroundTask
>         <- .c.b.offlinepages.BackgroundSchedulerBridge
>         <- .c.b.offlinepages.BackgroundSchedulerProcessor
>         <- .c.b.offlinepages.OfflineBackgroundTask
>         <- .c.b.offlinepages.prefetch.OfflineNotificationBackgroundTask
>         <- .c.b.offlinepages.prefetch.PrefetchBackgroundTask
>         <- .c.b.services.gcm.ChromeGcmListenerService
>         <- .c.b.sharing.click_to_call.ClickToCallMessageHandler
>
> This also breaks about 0.4% of the existing package cycles.
>
> Change-Id: I8ff8b665af2269161811ff76a4087b7e38d38172
> Bug: 1132380
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2429587
> Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
> Reviewed-by: Michael Thiessen <mthiesse@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#810702}

Bug: 1132380, 1132399
Change-Id: I3a41f3cb154ed261aed671debeb393b82b1411fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2432754
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Reviewed-by: default avatarMichael Thiessen <mthiesse@chromium.org>
Cr-Commit-Position: refs/heads/master@{#811470}
parent d337151e
......@@ -798,6 +798,7 @@ junit_binary("chrome_junit_tests") {
"//chrome/browser/browser_controls/android:java",
"//chrome/browser/browser_controls/android:junit",
"//chrome/browser/device:java",
"//chrome/browser/device:junit",
"//chrome/browser/download/android:java",
"//chrome/browser/download/android:junit_tests",
"//chrome/browser/endpoint_fetcher:java",
......
......@@ -6,6 +6,7 @@ include_rules = [
"-chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
"+chrome/browser/browser_controls/android",
"+chrome/browser/device",
"+chrome/browser/enterprise",
"+chrome/browser/feedback/android",
"+chrome/browser/flags/android",
......
......@@ -34,7 +34,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/DeferredStartupHandler.java",
"java/src/org/chromium/chrome/browser/DelayedScreenLockIntentHandler.java",
"java/src/org/chromium/chrome/browser/DevToolsServer.java",
"java/src/org/chromium/chrome/browser/DeviceConditions.java",
"java/src/org/chromium/chrome/browser/FileProviderHelper.java",
"java/src/org/chromium/chrome/browser/IntentHandler.java",
"java/src/org/chromium/chrome/browser/IntentHelper.java",
......
......@@ -4,8 +4,6 @@ chrome_junit_test_java_sources = [
"junit/src/org/chromium/chrome/browser/ChromeBackupAgentTest.java",
"junit/src/org/chromium/chrome/browser/DeferredStartupHandlerTest.java",
"junit/src/org/chromium/chrome/browser/DelayedScreenLockIntentHandlerTest.java",
"junit/src/org/chromium/chrome/browser/DeviceConditionsTest.java",
"junit/src/org/chromium/chrome/browser/ShadowDeviceConditions.java",
"junit/src/org/chromium/chrome/browser/ShadowIdleHandlerAwareMessageQueue.java",
"junit/src/org/chromium/chrome/browser/ShortcutHelperTest.java",
"junit/src/org/chromium/chrome/browser/about_settings/AboutSettingsBridgeTest.java",
......
......@@ -8,7 +8,7 @@ import android.content.Context;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.components.background_task_scheduler.NativeBackgroundTask;
import org.chromium.components.background_task_scheduler.TaskIds;
import org.chromium.components.background_task_scheduler.TaskParameters;
......
......@@ -8,7 +8,7 @@ import android.content.Context;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.components.background_task_scheduler.NativeBackgroundTask;
import org.chromium.components.background_task_scheduler.TaskIds;
import org.chromium.components.background_task_scheduler.TaskParameters;
......
......@@ -21,8 +21,8 @@ import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeTabbedActivity;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.download.DownloadLaterMetrics.DownloadLaterUiEvent;
import org.chromium.chrome.browser.download.dialogs.DownloadLaterDialogHelper;
import org.chromium.chrome.browser.download.dialogs.DownloadLaterDialogHelper.Source;
......
......@@ -13,7 +13,7 @@ import org.chromium.base.ContextUtils;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.annotations.UsedByReflection;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory;
import org.chromium.components.background_task_scheduler.NativeBackgroundTask;
......
......@@ -11,7 +11,7 @@ import org.chromium.base.ContextUtils;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
/**
* Provides Java scheduling support from native offlining code as
......
......@@ -7,7 +7,7 @@ package org.chromium.chrome.browser.offlinepages;
import androidx.annotation.VisibleForTesting;
import org.chromium.base.Callback;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
/** Class allowing for mocking out calls to BackgroundSchedulerBridge. */
public class BackgroundSchedulerProcessor {
......
......@@ -14,7 +14,7 @@ import org.chromium.base.ApplicationStatus;
import org.chromium.base.Callback;
import org.chromium.base.Log;
import org.chromium.base.SysUtils;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.components.background_task_scheduler.NativeBackgroundTask;
import org.chromium.components.background_task_scheduler.TaskIds;
import org.chromium.components.background_task_scheduler.TaskParameters;
......
......@@ -13,7 +13,7 @@ import androidx.annotation.VisibleForTesting;
import org.chromium.base.ContextUtils;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.flags.CachedFeatureFlags;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.offlinepages.OfflinePageBridge;
......
......@@ -11,7 +11,7 @@ import androidx.annotation.VisibleForTesting;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.flags.CachedFeatureFlags;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.components.background_task_scheduler.NativeBackgroundTask;
......
......@@ -16,7 +16,7 @@ import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.base.ThreadUtils;
import org.chromium.base.task.PostTask;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
import org.chromium.chrome.browser.init.ProcessInitializationHandler;
import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory;
......
......@@ -20,7 +20,7 @@ import org.chromium.base.ContextUtils;
import org.chromium.base.IntentUtils;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.notifications.NotificationConstants;
import org.chromium.chrome.browser.notifications.NotificationUmaTracker;
import org.chromium.chrome.browser.sharing.SharingNotificationUtil;
......
......@@ -24,8 +24,8 @@ import org.chromium.base.test.util.CallbackHelper;
import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.flags.ChromeSwitches;
import org.chromium.chrome.browser.offlinepages.AutoFetchNotifier.NotificationAction;
import org.chromium.chrome.browser.profiles.Profile;
......
......@@ -35,7 +35,7 @@ import org.chromium.base.SysUtils;
import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.JniMocker;
import org.chromium.chrome.browser.ShadowDeviceConditions;
import org.chromium.chrome.browser.device.ShadowDeviceConditions;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.test.util.browser.Features;
import org.chromium.components.background_task_scheduler.BackgroundTask;
......
......@@ -34,7 +34,7 @@ import org.chromium.base.SysUtils;
import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.JniMocker;
import org.chromium.chrome.browser.ShadowDeviceConditions;
import org.chromium.chrome.browser.device.ShadowDeviceConditions;
import org.chromium.components.background_task_scheduler.BackgroundTask;
import org.chromium.components.background_task_scheduler.BackgroundTaskScheduler;
import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory;
......
......@@ -34,8 +34,8 @@ import org.robolectric.shadows.multidex.ShadowMultiDex;
import org.chromium.base.Callback;
import org.chromium.base.metrics.test.ShadowRecordHistogram;
import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.ShadowDeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.device.ShadowDeviceConditions;
import org.chromium.chrome.browser.init.BrowserParts;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
import org.chromium.chrome.browser.profiles.Profile;
......
......@@ -38,8 +38,8 @@ import org.chromium.base.ContextUtils;
import org.chromium.base.SysUtils;
import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.ShadowDeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.device.ShadowDeviceConditions;
import org.chromium.components.background_task_scheduler.BackgroundTask;
import org.chromium.components.background_task_scheduler.BackgroundTaskScheduler;
import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory;
......
......@@ -44,9 +44,9 @@ import org.robolectric.shadows.multidex.ShadowMultiDex;
import org.chromium.base.Callback;
import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.ShadowDeviceConditions;
import org.chromium.chrome.browser.background_task_scheduler.ChromeNativeBackgroundTaskDelegate;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.device.ShadowDeviceConditions;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.init.BrowserParts;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
......
......@@ -34,9 +34,9 @@ import org.robolectric.shadows.multidex.ShadowMultiDex;
import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.base.test.util.JniMocker;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.ShadowDeviceConditions;
import org.chromium.chrome.browser.background_task_scheduler.ChromeNativeBackgroundTaskDelegate;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.device.ShadowDeviceConditions;
import org.chromium.chrome.browser.init.BrowserParts;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
import org.chromium.components.background_task_scheduler.BackgroundTask.TaskFinishedCallback;
......
......@@ -19,8 +19,8 @@ import org.robolectric.shadows.ShadowNotificationManager;
import org.chromium.base.test.BaseRobolectricTestRunner;
import org.chromium.base.test.util.Feature;
import org.chromium.chrome.browser.DeviceConditions;
import org.chromium.chrome.browser.ShadowDeviceConditions;
import org.chromium.chrome.browser.device.DeviceConditions;
import org.chromium.chrome.browser.device.ShadowDeviceConditions;
import org.chromium.net.ConnectionType;
/**
......
......@@ -5,13 +5,39 @@
import("//build/config/android/rules.gni")
android_library("java") {
sources = [ "android/java/src/org/chromium/chrome/browser/device/DeviceClassManager.java" ]
sources = [
"android/java/src/org/chromium/chrome/browser/device/DeviceClassManager.java",
"android/java/src/org/chromium/chrome/browser/device/DeviceConditions.java",
]
deps = [
"//base:base_java",
"//chrome/browser/flags:java",
"//chrome/browser/preferences:java",
"//chrome/browser/util:java",
"//net/android:net_java",
"//third_party/android_deps:androidx_annotation_annotation_java",
"//ui/android:ui_no_recycler_view_java",
]
}
android_library("junit") {
# Skip platform checks since Robolectric depends on requires_android targets.
bypass_platform_checks = true
testonly = true
sources = [
"android/java/src/org/chromium/chrome/browser/device/DeviceConditionsTest.java",
"android/java/src/org/chromium/chrome/browser/device/ShadowDeviceConditions.java",
]
deps = [
":java",
"//base:base_java",
"//base:base_java_test_support",
"//base:base_junit_test_support",
"//base/test:test_support_java",
"//chrome/test/android:chrome_java_test_support",
"//net/android:net_java",
"//third_party/android_deps:robolectric_all_java",
"//third_party/junit",
"//third_party/mockito:mockito_java",
]
}
......@@ -2,7 +2,7 @@
// 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;
package org.chromium.chrome.browser.device;
import android.annotation.TargetApi;
import android.app.KeyguardManager;
......
......@@ -2,7 +2,7 @@
// 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;
package org.chromium.chrome.browser.device;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
......
......@@ -2,7 +2,7 @@
// 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;
package org.chromium.chrome.browser.device;
import android.content.Context;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment