person4 = new Person();
person4.setName("New Goat");
person4.setBlurb("Also eats grass");
Future futureTask = cache2.putIfAbsentAsync("newGoat", person4);
futureTask.get();
assert futureTask.isDone();
List found = searchManager.getQuery(allQuery, Person.class).list();
AssertJUnit.assertEquals(4, found.size());
assert found.contains(person4);
Person person5 = new Person();
person5.setName("Abnormal Goat");
person5.setBlurb("Plays with grass.");
futureTask = cache2.putIfAbsentAsync("newGoat", person5);
futureTask.get();
assert futureTask.isDone();
found = searchManager.getQuery(allQuery, Person.class).list();
AssertJUnit.assertEquals(4, found.size());
assert !found.contains(person5);
assert found.contains(person4);
}