queueMessageStore, destinationStatistics, null);
queueMessageStore.start();
QueueStorePrefetch underTest = new QueueStorePrefetch(queue);
SystemUsage systemUsage = new SystemUsage();
// ensure memory limit is reached
systemUsage.getMemoryUsage().setLimit(messageBytesSize * (count + 2));
underTest.setSystemUsage(systemUsage);
underTest.setEnableAudit(false);
underTest.start();
assertTrue("cache enabled", underTest.isUseCache() && underTest.isCacheEnabled());
final ConnectionContext contextNotInTx = new ConnectionContext();
for (int i = 0; i < count; i++) {
ActiveMQTextMessage msg = getMessage(i);
msg.setMemoryUsage(systemUsage.getMemoryUsage());
queueMessageStore.addMessage(contextNotInTx, msg);
underTest.addMessageLast(msg);
}