aboutsummaryrefslogtreecommitdiff
path: root/work/workmanager/src/androidTest/java/androidx
diff options
context:
space:
mode:
authorSumir Kataria <sumir@google.com>2018-05-11 11:22:58 -0700
committerSumir Kataria <sumir@google.com>2018-05-11 11:30:08 -0700
commitd874811ee5f3275e6022115a03aa6001dc1830a9 (patch)
treecf897b670cc0289d096d53fd0f461792de1fe5f2 /work/workmanager/src/androidTest/java/androidx
parent5ca019f41e0d31e5c462a71dd056180cebdc1dcd (diff)
downloadsupport-d874811ee5f3275e6022115a03aa6001dc1830a9.tar.gz
Handle WorkSpec deletion in WorkerWrapper.
Change-Id: I85a1bd4b5c75ba778851408a30c690144997570a Fixes: 79550068 Test: Added testWorkerWrapper_handlesWorkSpecDeletion
Diffstat (limited to 'work/workmanager/src/androidTest/java/androidx')
-rw-r--r--work/workmanager/src/androidTest/java/androidx/work/impl/WorkerWrapperTest.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/work/workmanager/src/androidTest/java/androidx/work/impl/WorkerWrapperTest.java b/work/workmanager/src/androidTest/java/androidx/work/impl/WorkerWrapperTest.java
index ff81931ea4c..bd197407787 100644
--- a/work/workmanager/src/androidTest/java/androidx/work/impl/WorkerWrapperTest.java
+++ b/work/workmanager/src/androidTest/java/androidx/work/impl/WorkerWrapperTest.java
@@ -645,7 +645,7 @@ public class WorkerWrapperTest extends DatabaseTest {
}
@Test
- @SmallTest
+ @LargeTest
public void testInterruption() throws InterruptedException {
OneTimeWorkRequest work = new OneTimeWorkRequest.Builder(TestWorker.class).build();
insertWork(work);
@@ -675,4 +675,22 @@ public class WorkerWrapperTest extends DatabaseTest {
assertThat(mWorkSpecDao.getState(work.getStringId()), is(FAILED));
}
+
+ @Test
+ @LargeTest
+ public void testWorkerWrapper_handlesWorkSpecDeletion() throws InterruptedException {
+ OneTimeWorkRequest work = new OneTimeWorkRequest.Builder(SleepTestWorker.class).build();
+ insertWork(work);
+
+ WorkerWrapper workerWrapper =
+ new WorkerWrapper.Builder(mContext, mDatabase, work.getStringId())
+ .withSchedulers(Collections.singletonList(mMockScheduler))
+ .withListener(mMockListener)
+ .build();
+
+ Executors.newSingleThreadExecutor().submit(workerWrapper);
+ mWorkSpecDao.delete(work.getStringId());
+ Thread.sleep(6000L);
+ verify(mMockListener).onExecuted(work.getStringId(), false, false);
+ }
}