private void assertDataIsRemoved(GossipManager gm){ TUnit.assertThat(() -> gm.findPerNodeGossipData(myId, key)).equals(null); TUnit.assertThat(() -> gm.findSharedGossipData(key)).equals(null); }
private void assertDataIsAtCorrectValue(GossipManager gm){ Assert.assertEquals(value, gm.findPerNodeGossipData(myId, key).getPayload()); Assert.assertEquals(1, registry.getGauges().get(GossipCoreConstants.PER_NODE_DATA_SIZE).getValue()); Assert.assertEquals(value, gm.findSharedGossipData(key).getPayload()); Assert.assertEquals(1, registry.getGauges().get(GossipCoreConstants.SHARED_DATA_SIZE).getValue()); }
PerNodeDataMessage message = nodes.get(1).findPerNodeGossipData("1", "Dc1Rack1"); if(message == null){ return ""; PerNodeDataMessage message = nodes.get(3).findPerNodeGossipData("6", "Dc2Rack1"); if(message == null){ return "";
PerNodeDataMessage message = nodes.get(1).findPerNodeGossipData("1", "public"); if(message == null){ return ""; PerNodeDataMessage message = nodes.get(2).findPerNodeGossipData("1", "public"); if(message == null){ return ""; PerNodeDataMessage message = nodes.get(1).findPerNodeGossipData("1", "wl"); if(message == null){ return ""; PerNodeDataMessage message = nodes.get(2).findPerNodeGossipData("1", "bl"); if(message == null){ return "";
@Test public void simpleDataTest(){ TUnit.assertThat(() -> { int total = 0; for (GossipManager client : clients){ total += client.getLiveMembers().size(); } return total; }).afterWaitingAtMost(10, TimeUnit.SECONDS).isEqualTo(2); clients.get(0).gossipPerNodeData(generatePerNodeMsg("a", "b")); clients.get(0).gossipSharedData(generateSharedMsg("a", "c")); TUnit.assertThat(() -> { PerNodeDataMessage x = clients.get(1).findPerNodeGossipData(1 + "", "a"); if (x == null) return ""; else return x.getPayload(); }).afterWaitingAtMost(10, TimeUnit.SECONDS).isEqualTo("b"); TUnit.assertThat(() -> { SharedDataMessage x = clients.get(1).findSharedGossipData("a"); if (x == null) return ""; else return x.getPayload(); }).afterWaitingAtMost(10, TimeUnit.SECONDS).isEqualTo("c"); }
@Test public void testHigherTimestampWins() { String myId = "4"; String key = "key"; String value = "a"; GossipSettings settings = new GossipSettings(); settings.setTransportManagerClass("org.apache.gossip.transport.UnitTestTransportManager"); settings.setProtocolManagerClass("org.apache.gossip.protocol.UnitTestProtocolManager"); GossipManager gm = GossipManagerBuilder.newBuilder().cluster("abc").gossipSettings(settings) .id(myId).uri(URI.create("udp://localhost:7000")).registry(registry).build(); gm.init(); PerNodeDataMessage before = perNodeDatum(key, value); PerNodeDataMessage after = perNodeDatum(key, "b"); after.setTimestamp(after.getTimestamp() - 1); gm.gossipPerNodeData(before); Assert.assertEquals(value, gm.findPerNodeGossipData(myId, key).getPayload()); gm.gossipPerNodeData(after); Assert.assertEquals(value, gm.findPerNodeGossipData(myId, key).getPayload()); gm.shutdown(); }
Assert.assertEquals("red", ((AToothpick) gossipService.findPerNodeGossipData(nodeId, "a").getPayload()).getColor()); Assert.assertEquals("blue", ((AToothpick) gossipService.findSharedGossipData("a").getPayload()).getColor()); File f = GossipManager.buildSharedDataPath(gossipService);