private void testAdd(TestResourceManager masterResourceManager, List<DefaultTestResourceManager> slaveResourceManagers,
TShirt ts, int expectedResults) throws ParseException {
try ( Session slaveSession = slaveResourceManagers.get( 0 ).openSession() ) {
Transaction tx = slaveSession.beginTransaction();
slaveSession.persist( ts );
tx.commit();
try ( Session masterSession = masterResourceManager.openSession() ) {
POLLER.pollAssertion( () -> {
List<?> result = doQuery( masterSession );
Assert.assertEquals( "Lots of time waited and still the document is not indexed on master yet!",
expectedResults, result.size() );
} );
}
}
POLLER.pollAssertion( () -> {
for ( TestResourceManager resourceManager : slaveResourceManagers ) {
try ( Session slaveSession = resourceManager.openSession() ) {
List<?> result = doQuery( slaveSession );
Assert.assertEquals( "Lots of time waited and still the document is not visible from the slave yet!",
expectedResults, result.size() );
}
}
} );
}