public void testQRP() throws Exception { RoutedConnection c = connectionManager.getInitializedConnections().get(0); c.getRoutedConnectionStatistics().incrementNextQRPForwardTime(0); PatchTableMessage ptm = BlockingConnectionUtils.getFirstInstanceOfMessageType( testUP[0], PatchTableMessage.class, 22000); assertNotNull(ptm); QueryRouteTable qrt = new QueryRouteTable(); qrt.patch(ptm); // initially, the qrp words should be included assertTrue(qrt.contains(queryRequestFactory.createQuery("badger"))); // change some words, an updated qrp should be sent shortly SearchSettings.LIME_QRP_ENTRIES.set(new String[] {"mushroom"}); c.getRoutedConnectionStatistics().incrementNextQRPForwardTime(0); triggerSimppUpdate(); ptm = BlockingConnectionUtils.getFirstInstanceOfMessageType( testUP[0], PatchTableMessage.class, 12000); assertNotNull(ptm); qrt.patch(ptm); // the new word should be there, the old one gone. assertTrue(qrt.contains(queryRequestFactory.createQuery("mushroom"))); assertFalse(qrt.contains(queryRequestFactory.createQuery("badger"))); }