// Assert messages are received correctly
MuleMessage message = client.request("vm://out", RECEIVE_TIMEOUT);
assertNotNull("No message received", message);
ConnectionListener connectionListener = new ConnectionListener(muleContext)
.setExpectedAction(ConnectionNotification.CONNECTION_FAILED).setNumberOfExecutionsRequired(3);
// Stop the database, Mule should try to reconnect
stopDatabase();
// Wait for reconnect attempts ("connect failed" notifications)
connectionListener.waitUntilNotificationsAreReceived();
// Restart the database
startDatabase();
createTable();
populateTable();