diff options
Diffstat (limited to 'chromium/base/android/javatests/src/org/chromium/base/task/SequencedTaskRunnerImplTest.java')
-rw-r--r-- | chromium/base/android/javatests/src/org/chromium/base/task/SequencedTaskRunnerImplTest.java | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/chromium/base/android/javatests/src/org/chromium/base/task/SequencedTaskRunnerImplTest.java b/chromium/base/android/javatests/src/org/chromium/base/task/SequencedTaskRunnerImplTest.java new file mode 100644 index 00000000000..641dabed78e --- /dev/null +++ b/chromium/base/android/javatests/src/org/chromium/base/task/SequencedTaskRunnerImplTest.java @@ -0,0 +1,42 @@ +// Copyright 2018 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +package org.chromium.base.task; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.collection.IsIterableContainingInOrder.contains; + +import androidx.test.filters.SmallTest; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import org.chromium.base.test.BaseJUnit4ClassRunner; +import org.chromium.base.test.task.SchedulerTestHelpers; + +import java.util.ArrayList; +import java.util.List; + +/** + * Test class for {@link SequencedTaskRunnerImpl}. + * + * Note due to layering concerns we can't test post native functionality in a + * base javatest. Instead see: + * content/public/android/javatests/src/org/chromium/content/browser/scheduler/ + * NativePostTaskTest.java + */ +@RunWith(BaseJUnit4ClassRunner.class) +public class SequencedTaskRunnerImplTest { + @Test + @SmallTest + public void testPreNativeTasksRunInOrder() { + TaskRunner taskQueue = new SequencedTaskRunnerImpl(TaskTraits.USER_BLOCKING); + List<Integer> orderList = new ArrayList<>(); + SchedulerTestHelpers.postRecordOrderTask(taskQueue, orderList, 1); + SchedulerTestHelpers.postRecordOrderTask(taskQueue, orderList, 2); + SchedulerTestHelpers.postRecordOrderTask(taskQueue, orderList, 3); + SchedulerTestHelpers.postTaskAndBlockUntilRun(taskQueue); + assertThat(orderList, contains(1, 2, 3)); + } +} |