use of org.infinispan.test.data.Person in project infinispan by infinispan.
the class LazyCacheAPITest method testReplaceWithOld.
public void testReplaceWithOld(Method m) {
Person key = new Person(m.getName());
cache.put(key, "1");
assert "1".equals(cache.get(new Person(m.getName())));
assert !cache.replace(new Person(m.getName()), "99", "2");
assert cache.replace(new Person(m.getName()), "1", "2");
key = new Person(m.getName() + "-withCustomValue");
Person v1 = new Person("value1");
cache.put(key, v1);
assert v1.equals(cache.get(key));
Person v99 = new Person("value99");
Person v2 = new Person("value2");
assert !cache.replace(key, v99, v2);
assert cache.replace(key, v1, v2);
}
use of org.infinispan.test.data.Person in project infinispan by infinispan.
the class BaseNonBlockingStoreTest method testLoadAndStoreBytesValues.
public void testLoadAndStoreBytesValues() throws PersistenceException, IOException, InterruptedException {
assertIsEmpty();
SerializationContext ctx = ProtobufUtil.newSerializationContext();
SerializationContextInitializer sci = TestDataSCI.INSTANCE;
sci.registerSchema(ctx);
sci.registerMarshallers(ctx);
Marshaller userMarshaller = new ProtoStreamMarshaller(ctx);
WrappedBytes key = new WrappedByteArray(userMarshaller.objectToByteBuffer(new Key("key")));
WrappedBytes key2 = new WrappedByteArray(userMarshaller.objectToByteBuffer(new Key("key2")));
WrappedBytes value = new WrappedByteArray(userMarshaller.objectToByteBuffer(new Person()));
assertFalse(store.contains(key));
PersistenceMarshaller persistenceMarshaller = getMarshaller();
store.write(MarshalledEntryUtil.create(key, value, persistenceMarshaller));
assertEquals(value, store.loadEntry(key).getValue());
MarshallableEntry<?, ?> entry = store.loadEntry(key);
assertTrue("Expected an immortalEntry", entry.getMetadata() == null || entry.expiryTime() == -1 || entry.getMetadata().maxIdle() == -1);
assertTrue(store.contains(key));
// Delete return value is optional
// The store may return null or FALSE but not TRUE
assertNotSame(Boolean.TRUE, store.delete(key2));
// The store may return null or TRUE but not FALSE
assertNotSame(Boolean.FALSE, store.delete(key));
}
use of org.infinispan.test.data.Person in project infinispan by infinispan.
the class DefensiveCopyTest method testSafetyAfterRetrieving.
public void testSafetyAfterRetrieving() {
final Integer k = 2;
Person person = new Person("Mr Coe");
cache().put(k, person);
Person cachedPerson = this.<Integer, Person>cache().get(k);
assertEquals(person, cachedPerson);
cachedPerson.setName("Mr Digweed");
assertEquals(person, cache.get(k));
}
use of org.infinispan.test.data.Person in project infinispan by infinispan.
the class DefensiveCopyTest method testOriginalReferenceSafety.
public void testOriginalReferenceSafety() {
Person key = new Person("Key1");
Person value = new Person("Mr Infinispan");
cache().put(key, value);
assertEquals(value, cache.get(key));
// Change referenced object
value.setName("Ms Hibernate");
// If defensive copies are working as expected,
// it should be same as before
assertEquals(new Person("Mr Infinispan"), cache.get(key));
key.setName("Key2");
assertNull(cache.get(key));
}
use of org.infinispan.test.data.Person in project infinispan by infinispan.
the class DistributedMultimapCacheTest method testGetAndModifyResults.
public void testGetAndModifyResults() {
initAndTest();
MultimapCache<String, Person> multimapCache = getMultimapCacheMember(NAMES_KEY);
Person pepe = new Person("Pepe");
await(multimapCache.get(NAMES_KEY).thenAccept(v -> {
List<Person> modifiedList = new ArrayList<>(v);
modifiedList.add(pepe);
}));
assertKeyValueNotFoundInAllCaches(NAMES_KEY, pepe);
}
Aggregations