diff options
author | Sumir Kataria <sumir@google.com> | 2018-05-11 11:22:58 -0700 |
---|---|---|
committer | Sumir Kataria <sumir@google.com> | 2018-05-11 11:30:08 -0700 |
commit | d874811ee5f3275e6022115a03aa6001dc1830a9 (patch) | |
tree | cf897b670cc0289d096d53fd0f461792de1fe5f2 /work/workmanager/src/androidTest/java/androidx | |
parent | 5ca019f41e0d31e5c462a71dd056180cebdc1dcd (diff) | |
download | support-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.java | 20 |
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); + } } |