Index: chrome/android/javatests/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceTest.java |
index 8872090740282dd1cc1b0de48d7844954829e7f9..3b448e7b96959ec61bd69b4bfc724614fb5be3c7 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceTest.java |
@@ -23,7 +23,6 @@ import android.support.test.filters.SmallTest; |
import org.chromium.base.annotations.SuppressFBWarnings; |
import org.chromium.base.test.util.AdvancedMockContext; |
import org.chromium.base.test.util.Feature; |
-import org.chromium.chrome.browser.ChromeFeatureList; |
import org.chromium.components.background_task_scheduler.TaskIds; |
import org.chromium.components.minidump_uploader.CrashTestCase; |
import org.chromium.components.minidump_uploader.MinidumpUploadCallable; |
@@ -35,9 +34,7 @@ import org.chromium.net.NetworkChangeNotifier; |
import java.io.File; |
import java.io.IOException; |
import java.util.ArrayList; |
-import java.util.HashMap; |
import java.util.List; |
-import java.util.Map; |
import java.util.concurrent.atomic.AtomicInteger; |
/** |
* Testcase for {@link MinidumpUploadService}. |
@@ -79,28 +76,13 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
} |
} |
- @Override |
- protected void tearDown() throws Exception { |
- ChromeFeatureList.setTestFeatures(null); |
- super.tearDown(); |
- } |
- |
- /** |
- * Sets whether to upload minidumps using the JobScheduler API. Minidumps can either be uploaded |
- * via a JobScheduler, or via a direct Intent service. |
- * @param enable Whether to enable the JobScheduler API. |
- */ |
- private void setJobSchedulerEnabled(boolean enable) { |
- Map<String, Boolean> features = new HashMap<>(); |
- features.put(ChromeFeatureList.UPLOAD_CRASH_REPORTS_USING_JOB_SCHEDULER, enable); |
- ChromeFeatureList.setTestFeatures(features); |
- } |
- |
@SmallTest |
@Feature({"Android-AppBase"}) |
public void testTryUploadAllCrashDumps() throws IOException { |
+ // The JobScheduler API is used on Android M+. |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; |
+ |
// Setup prerequisites. |
- setJobSchedulerEnabled(false); |
final AtomicInteger numServiceStarts = new AtomicInteger(0); |
final File[] minidumpFiles = { |
new File(mCrashDir, "chromium_renderer-111.dmp1"), |
@@ -190,11 +172,13 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
@SuppressFBWarnings("RV_RETURN_VALUE_IGNORED_BAD_PRACTICE") |
private void runUploadCrashTest(final List<CountedMinidumpUploadCallable> callables) |
throws IOException, InterruptedException { |
+ // The JobScheduler API is used on Android M+. |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; |
+ |
// Setup prerequisites. |
// This version of the service overrides the createMinidumpUploadCallable(...) to be able |
// to return fake ones. It also ensures that the service never tries to create a callable |
// too many times. |
- setJobSchedulerEnabled(false); |
TestMinidumpUploadService service = new TestMinidumpUploadService() { |
int mIndex = 0; |
boolean mTriggerNetworkChange = false; |
@@ -311,8 +295,10 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
@Feature({"Android-AppBase"}) |
public void testHandleForceUploadCrash_MinidumpFileExists_SansJobScheduler() |
throws IOException { |
+ // The JobScheduler API is used on Android M+. |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; |
+ |
// Set up prerequisites. |
- setJobSchedulerEnabled(false); |
File minidumpFile = |
new File(mCrashDir, "chromium-renderer-minidump-f297dbcba7a2d0bb.dmp0.try3"); |
final File expectedRenamedMinidumpFile = |
@@ -344,9 +330,8 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
@Feature({"Android-AppBase"}) |
public void testHandleForceUploadCrash_MinidumpFileExists_WithJobScheduler() |
throws IOException { |
- // The JobScheduler API is only available as of Android M. |
+ // The JobScheduler API is only available as of Android M+. |
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return; |
- setJobSchedulerEnabled(true); |
// Set up prerequisites. |
setUpMinidumpFile( |
@@ -371,8 +356,10 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
@Feature({"Android-AppBase"}) |
public void testHandleForceUploadCrash_SkippedMinidumpFileExists_SansJobScheduler() |
throws IOException { |
+ // The JobScheduler API is used on Android M+. |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; |
+ |
// Set up prerequisites. |
- setJobSchedulerEnabled(false); |
File minidumpFile = |
new File(mCrashDir, "chromium-renderer-minidump-f297dbcba7a2d0bb.skipped0.try0"); |
final File expectedRenamedMinidumpFile = |
@@ -406,7 +393,6 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
throws IOException { |
// The JobScheduler API is only available as of Android M. |
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return; |
- setJobSchedulerEnabled(true); |
// Set up prerequisites. |
setUpMinidumpFile( |
@@ -430,8 +416,10 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
@SmallTest |
@Feature({"Android-AppBase"}) |
public void testHandleForceUploadCrash_FileDoesntExist_SansJobScheduler() { |
+ // The JobScheduler API is used on Android M+. |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; |
+ |
// Set up prerequisites. |
- setJobSchedulerEnabled(false); |
final String startServiceFlag = "startServiceFlag"; |
MinidumpPreparationContext context = new MinidumpPreparationContext( |
getInstrumentation().getTargetContext()) { |
@@ -455,7 +443,6 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
public void testHandleForceUploadCrash_FileDoesntExist_WithJobScheduler() throws IOException { |
// The JobScheduler API is only available as of Android M. |
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return; |
- setJobSchedulerEnabled(true); |
// Set up prerequisites. |
AdvancedMockContext context = |
@@ -473,8 +460,10 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
@Feature({"Android-AppBase"}) |
public void testHandleForceUploadCrash_FileAlreadyUploaded_SansJobScheduler() |
throws IOException { |
+ // The JobScheduler API is used on Android M+. |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) return; |
+ |
// Set up prerequisites. |
- setJobSchedulerEnabled(false); |
setUpMinidumpFile( |
new File(mCrashDir, "chromium-renderer-minidump-f297dbcba7a2d0bb.up0.try0"), |
BOUNDARY); |
@@ -502,7 +491,6 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
throws IOException { |
// The JobScheduler API is only available as of Android M. |
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) return; |
- setJobSchedulerEnabled(true); |
// Set up prerequisites. |
setUpMinidumpFile( |
@@ -574,9 +562,6 @@ public class MinidumpUploadServiceTest extends CrashTestCase { |
@Override |
public Object getSystemService(String name) { |
if (Context.JOB_SCHEDULER_SERVICE.equals(name)) { |
- assertTrue("Should only access the JobScheduler when it is enabled.", |
- ChromeFeatureList.isEnabled( |
- ChromeFeatureList.UPLOAD_CRASH_REPORTS_USING_JOB_SCHEDULER)); |
return new TestJobScheduler(this); |
} |