@Test
public void completeTask_retrievedTaskIsComplete() {
// Given a new task in the persistent repository
final Task newTask = new Task(TITLE, "");
mLocalDataSource.saveTask(newTask);
// When completed in the persistent repository
mLocalDataSource.completeTask(newTask);
// Then the task can be retrieved from the persistent repository and is complete
TestSubscriber<Optional<Task>> testSubscriber = new TestSubscriber<>();
mLocalDataSource.getTask(newTask.getId()).subscribe(testSubscriber);
testSubscriber.assertValueCount(1);
Task result = testSubscriber.values().get(0).get();
assertThat(result.isCompleted(), is(true));
}