public void testPartitionableInMemoryStore()
throws ObjectStoreException, RegistrationException, InterruptedException
{
muleContext.getRegistry().registerObject(MuleProperties.OBJECT_STORE_DEFAULT_IN_MEMORY_NAME,
new PartitionedInMemoryObjectStore<String>());
ObjectStoreManager manager = muleContext.getRegistry().lookupObject(
MuleProperties.OBJECT_STORE_MANAGER);
ListableObjectStore<String> store = manager.getObjectStore("inMemoryPart2", false);
assertTrue(store instanceof ObjectStorePartition);
ObjectStore<String> baseStore = ((ObjectStorePartition<String>) store).getBaseStore();
assertTrue(baseStore instanceof PartitionedInMemoryObjectStore);
assertSame(baseStore,
muleContext.getRegistry().lookupObject(MuleProperties.OBJECT_STORE_DEFAULT_IN_MEMORY_NAME));
testObjectStore(store);
testObjectStoreExpiry(manager.<ObjectStore<String>> getObjectStore("inMemoryExpPart2", false, -1,
500, 200));
testObjectStoreMaxEntries(manager.<ListableObjectStore<String>> getObjectStore("inMemoryMaxPart2",
false, 10, 10000, 200));
}