Skip to content

Commit

Permalink
Roll Robolectric to 3.5.1.
Browse files Browse the repository at this point in the history
Bug: 729135
Change-Id: Ib8c512e675157d46c6009f53bc462c0d9511fbfe
Reviewed-on: https://chromium-review.googlesource.com/798641
Commit-Queue: John Budorick <jbudorick@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: Tommy Nyquist <nyquist@chromium.org>
Cr-Commit-Position: refs/heads/master@{#520746}
  • Loading branch information
jbudorick authored and Commit Bot committed Nov 30, 2017
1 parent 0cdbf3e commit e7f2d13
Show file tree
Hide file tree
Showing 10 changed files with 94 additions and 81 deletions.
2 changes: 1 addition & 1 deletion DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -566,7 +566,7 @@ deps = {
},

'src/third_party/robolectric/robolectric': {
'url': Var('chromium_git') + '/external/robolectric.git' + '@' + '4a3f2156ab7eb5213dffc3afe2d08b78dedb1478',
'url': Var('chromium_git') + '/external/robolectric.git' + '@' + '7e067f1112e1502caa742f7be72d37b5678d3403',
'condition': 'checkout_android',
},

Expand Down
2 changes: 1 addition & 1 deletion build/cipd/android/android.ensure
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ chromium/third_party/ow2_asm version:5.0.1-cr0
# endless merge conflicts

@Subdir third_party/robolectric
chromium/third_party/robolectric version:3.4.2
chromium/third_party/robolectric version:3.5.1

# Three unchanging lines
# avoid the horror that is
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,13 @@ private enum InitializerSetup {
EXCEPTION,
}

private static final TaskParameters TASK_PARAMETERS =
TaskParameters.create(TaskIds.TEST).build();
private static class LazyTaskParameters {
static final TaskParameters INSTANCE = TaskParameters.create(TaskIds.TEST).build();
}

private static TaskParameters getTaskParameters() {
return LazyTaskParameters.INSTANCE;
}

@Mock
private BrowserStartupController mBrowserStartupController;
Expand Down Expand Up @@ -121,7 +126,7 @@ protected int onStartTaskBeforeNativeLoaded(
protected void onStartTaskWithNative(
Context context, TaskParameters taskParameters, TaskFinishedCallback callback) {
assertEquals(RuntimeEnvironment.application, context);
assertEquals(TASK_PARAMETERS, taskParameters);
assertEquals(getTaskParameters(), taskParameters);
mWasOnStartTaskWithNativeCalled = true;
mStartWithNativeLatch.countDown();
}
Expand Down Expand Up @@ -242,7 +247,8 @@ public void testOnStartTask_Done_BeforeNativeLoaded() {
TaskFinishedCallback callback = new TaskFinishedCallback();
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.setStartTaskBeforeNativeResult(NativeBackgroundTask.DONE);
assertFalse(task.onStartTask(RuntimeEnvironment.application, TASK_PARAMETERS, callback));
assertFalse(
task.onStartTask(RuntimeEnvironment.application, getTaskParameters(), callback));

verify(mBrowserStartupController, times(0)).isStartupSuccessfullyCompleted();
verifyStartupCalls(0, 0);
Expand All @@ -256,7 +262,7 @@ public void testOnStartTask_Reschedule_BeforeNativeLoaded() {
TaskFinishedCallback callback = new TaskFinishedCallback();
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.setStartTaskBeforeNativeResult(NativeBackgroundTask.RESCHEDULE);
assertTrue(task.onStartTask(RuntimeEnvironment.application, TASK_PARAMETERS, callback));
assertTrue(task.onStartTask(RuntimeEnvironment.application, getTaskParameters(), callback));

assertTrue(callback.waitOnCallback());
verify(mBrowserStartupController, times(0)).isStartupSuccessfullyCompleted();
Expand All @@ -272,7 +278,7 @@ public void testOnStartTask_NativeAlreadyLoaded() {
doReturn(true).when(mBrowserStartupController).isStartupSuccessfullyCompleted();
TaskFinishedCallback callback = new TaskFinishedCallback();
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.onStartTask(RuntimeEnvironment.application, TASK_PARAMETERS, callback);
task.onStartTask(RuntimeEnvironment.application, getTaskParameters(), callback);

assertTrue(task.waitOnStartWithNativeCallback());
verify(mBrowserStartupController, times(1)).isStartupSuccessfullyCompleted();
Expand All @@ -288,7 +294,7 @@ public void testOnStartTask_NativeInitialization_Success() {
setUpChromeBrowserInitializer(InitializerSetup.SUCCESS);
TaskFinishedCallback callback = new TaskFinishedCallback();
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.onStartTask(RuntimeEnvironment.application, TASK_PARAMETERS, callback);
task.onStartTask(RuntimeEnvironment.application, getTaskParameters(), callback);

assertTrue(task.waitOnStartWithNativeCallback());
verify(mBrowserStartupController, times(1)).isStartupSuccessfullyCompleted();
Expand All @@ -304,7 +310,7 @@ public void testOnStartTask_NativeInitialization_Failure() {
setUpChromeBrowserInitializer(InitializerSetup.FAILURE);
TaskFinishedCallback callback = new TaskFinishedCallback();
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.onStartTask(RuntimeEnvironment.application, TASK_PARAMETERS, callback);
task.onStartTask(RuntimeEnvironment.application, getTaskParameters(), callback);

assertTrue(callback.waitOnCallback());
verify(mBrowserStartupController, times(1)).isStartupSuccessfullyCompleted();
Expand All @@ -321,7 +327,7 @@ public void testOnStartTask_NativeInitialization_Throws() {
setUpChromeBrowserInitializer(InitializerSetup.EXCEPTION);
TaskFinishedCallback callback = new TaskFinishedCallback();
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.onStartTask(RuntimeEnvironment.application, TASK_PARAMETERS, callback);
task.onStartTask(RuntimeEnvironment.application, getTaskParameters(), callback);

assertTrue(callback.waitOnCallback());
verify(mBrowserStartupController, times(1)).isStartupSuccessfullyCompleted();
Expand All @@ -339,7 +345,7 @@ public void testOnStopTask_BeforeNativeLoaded_NeedsRescheduling() {
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.setNeedsReschedulingAfterStop(true);

assertTrue(task.onStopTask(RuntimeEnvironment.application, TASK_PARAMETERS));
assertTrue(task.onStopTask(RuntimeEnvironment.application, getTaskParameters()));
assertTrue(task.wasOnStopTaskBeforeNativeLoadedCalled());
assertFalse(task.wasOnStopTaskWithNativeCalled());
}
Expand All @@ -352,7 +358,7 @@ public void testOnStopTask_BeforeNativeLoaded_DoesntNeedRescheduling() {
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.setNeedsReschedulingAfterStop(false);

assertFalse(task.onStopTask(RuntimeEnvironment.application, TASK_PARAMETERS));
assertFalse(task.onStopTask(RuntimeEnvironment.application, getTaskParameters()));
assertTrue(task.wasOnStopTaskBeforeNativeLoadedCalled());
assertFalse(task.wasOnStopTaskWithNativeCalled());
}
Expand All @@ -365,7 +371,7 @@ public void testOnStopTask_NativeLoaded_NeedsRescheduling() {
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.setNeedsReschedulingAfterStop(true);

assertTrue(task.onStopTask(RuntimeEnvironment.application, TASK_PARAMETERS));
assertTrue(task.onStopTask(RuntimeEnvironment.application, getTaskParameters()));
assertFalse(task.wasOnStopTaskBeforeNativeLoadedCalled());
assertTrue(task.wasOnStopTaskWithNativeCalled());
}
Expand All @@ -378,7 +384,7 @@ public void testOnStopTask_NativeLoaded_DoesntNeedRescheduling() {
TestNativeBackgroundTask task = new TestNativeBackgroundTask();
task.setNeedsReschedulingAfterStop(false);

assertFalse(task.onStopTask(RuntimeEnvironment.application, TASK_PARAMETERS));
assertFalse(task.onStopTask(RuntimeEnvironment.application, getTaskParameters()));
assertFalse(task.wasOnStopTaskBeforeNativeLoadedCalled());
assertTrue(task.wasOnStopTaskWithNativeCalled());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ public void testRewriteUnicodeHost() {
installBrowser(browserPackageName);

Intent launchIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(intentStartUrl));
Robolectric.buildActivity(MainActivity.class).withIntent(launchIntent).create();
Robolectric.buildActivity(MainActivity.class, launchIntent).create();

Intent startActivityIntent = ShadowApplication.getInstance().getNextStartedActivity();
Assert.assertEquals(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,17 +42,14 @@
@Config(manifest = Config.NONE,
shadows = {ShadowGcmNetworkManager.class, ShadowGoogleApiAvailability.class})
public class BackgroundTaskSchedulerImplTest {
private static final TaskInfo TASK =
TaskInfo.createOneOffTask(
TaskIds.TEST, TestBackgroundTask.class, TimeUnit.DAYS.toMillis(1))
.build();

@Mock
private BackgroundTaskSchedulerDelegate mDelegate;
@Mock
private BackgroundTaskSchedulerUma mBackgroundTaskSchedulerUma;
private ShadowGcmNetworkManager mGcmNetworkManager;

private TaskInfo mTask;

@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
Expand All @@ -67,49 +64,53 @@ public void setUp() {
.setIsGooglePlayServicesAvailable(ConnectionResult.SUCCESS);
mGcmNetworkManager = (ShadowGcmNetworkManager) Shadow.extract(
GcmNetworkManager.getInstance(ContextUtils.getApplicationContext()));

mTask = TaskInfo.createOneOffTask(
TaskIds.TEST, TestBackgroundTask.class, TimeUnit.DAYS.toMillis(1))
.build();
}

@Test
@Feature({"BackgroundTaskScheduler"})
public void testScheduleTaskSuccessful() {
doReturn(true).when(mDelegate).schedule(eq(RuntimeEnvironment.application), eq(TASK));
doReturn(true).when(mDelegate).schedule(eq(RuntimeEnvironment.application), eq(mTask));
BackgroundTaskSchedulerFactory.getScheduler().schedule(
RuntimeEnvironment.application, TASK);
RuntimeEnvironment.application, mTask);
assertTrue(BackgroundTaskSchedulerPrefs.getScheduledTasks().contains(
TASK.getBackgroundTaskClass().getName()));
verify(mDelegate, times(1)).schedule(eq(RuntimeEnvironment.application), eq(TASK));
mTask.getBackgroundTaskClass().getName()));
verify(mDelegate, times(1)).schedule(eq(RuntimeEnvironment.application), eq(mTask));
verify(mBackgroundTaskSchedulerUma, times(1))
.reportTaskScheduled(eq(TaskIds.TEST), eq(true));
}

@Test
@Feature({"BackgroundTaskScheduler"})
public void testScheduleTaskFailed() {
doReturn(false).when(mDelegate).schedule(eq(RuntimeEnvironment.application), eq(TASK));
doReturn(false).when(mDelegate).schedule(eq(RuntimeEnvironment.application), eq(mTask));
BackgroundTaskSchedulerFactory.getScheduler().schedule(
RuntimeEnvironment.application, TASK);
RuntimeEnvironment.application, mTask);
assertFalse(BackgroundTaskSchedulerPrefs.getScheduledTasks().contains(
TASK.getBackgroundTaskClass().getName()));
verify(mDelegate, times(1)).schedule(eq(RuntimeEnvironment.application), eq(TASK));
mTask.getBackgroundTaskClass().getName()));
verify(mDelegate, times(1)).schedule(eq(RuntimeEnvironment.application), eq(mTask));
}

@Test
@Feature({"BackgroundTaskScheduler"})
public void testCancel() {
BackgroundTaskSchedulerPrefs.addScheduledTask(TASK);
BackgroundTaskSchedulerPrefs.addScheduledTask(mTask);

doNothing().when(mDelegate).cancel(eq(RuntimeEnvironment.application), eq(TaskIds.TEST));
BackgroundTaskSchedulerFactory.getScheduler().cancel(
RuntimeEnvironment.application, TaskIds.TEST);
assertFalse(BackgroundTaskSchedulerPrefs.getScheduledTasks().contains(
TASK.getBackgroundTaskClass().getName()));
mTask.getBackgroundTaskClass().getName()));
verify(mDelegate, times(1)).cancel(eq(RuntimeEnvironment.application), eq(TaskIds.TEST));
}

@Test
@Feature({"BackgroundTaskScheduler"})
public void testRescheduleTasks() {
BackgroundTaskSchedulerPrefs.addScheduledTask(TASK);
BackgroundTaskSchedulerPrefs.addScheduledTask(mTask);

assertEquals(0, TestBackgroundTask.getRescheduleCalls());
assertFalse(BackgroundTaskSchedulerPrefs.getScheduledTasks().isEmpty());
Expand All @@ -123,15 +124,15 @@ public void testRescheduleTasks() {
@Feature({"BackgroundTaskScheduler"})
public void testCheckForOSUpgrade_PreMToMPlus() {
BackgroundTaskSchedulerPrefs.setLastSdkVersion(Build.VERSION_CODES.LOLLIPOP);
BackgroundTaskSchedulerPrefs.addScheduledTask(TASK);
BackgroundTaskSchedulerPrefs.addScheduledTask(mTask);
ReflectionHelpers.setStaticField(Build.VERSION.class, "SDK_INT", Build.VERSION_CODES.M);

BackgroundTaskSchedulerFactory.getScheduler().checkForOSUpgrade(
RuntimeEnvironment.application);

assertEquals(Build.VERSION_CODES.M, BackgroundTaskSchedulerPrefs.getLastSdkVersion());
assertTrue(mGcmNetworkManager.getCanceledTaskTags().contains(
Integer.toString(TASK.getTaskId())));
Integer.toString(mTask.getTaskId())));
assertEquals(1, TestBackgroundTask.getRescheduleCalls());
}

Expand All @@ -140,7 +141,7 @@ public void testCheckForOSUpgrade_PreMToMPlus() {
@Feature({"BackgroundTaskScheduler"})
public void testCheckForOSUpgrade_PreMToPreM() {
BackgroundTaskSchedulerPrefs.setLastSdkVersion(Build.VERSION_CODES.KITKAT);
BackgroundTaskSchedulerPrefs.addScheduledTask(TASK);
BackgroundTaskSchedulerPrefs.addScheduledTask(mTask);
ReflectionHelpers.setStaticField(
Build.VERSION.class, "SDK_INT", Build.VERSION_CODES.LOLLIPOP);

Expand All @@ -157,7 +158,7 @@ public void testCheckForOSUpgrade_PreMToPreM() {
@Feature({"BackgroundTaskScheduler"})
public void testCheckForOSUpgrade_MPlusToMPlus() {
BackgroundTaskSchedulerPrefs.setLastSdkVersion(Build.VERSION_CODES.M);
BackgroundTaskSchedulerPrefs.addScheduledTask(TASK);
BackgroundTaskSchedulerPrefs.addScheduledTask(mTask);
ReflectionHelpers.setStaticField(Build.VERSION.class, "SDK_INT", Build.VERSION_CODES.N);

BackgroundTaskSchedulerFactory.getScheduler().checkForOSUpgrade(
Expand Down
Loading

0 comments on commit e7f2d13

Please sign in to comment.