Hi,
There is no error in these tests, and you shouldn't change the tests for them to pass. My explanations are below.
Tests on DSDV, like TestGossiper_Topo1_5Nodes_DSDV1, may not give enough time for anti-entropy to be triggered.
Like the one you mentioned, some tests verify that you build routing tables based on message rumors only, without relying on anti-entropy. This is why the test deadline of 5 seconds is smaller than the anti-entropy parameter of 10 seconds. Other than debugging reasons, please do not change the anti-entropy parameter because you're changing the behavior we intended to test.
TestBinGossiper_Topo1_2Nodes_Rumor assumes that the expected rumor is the first one received. But when I run the test, the nodes may receive rumors originated from themselves first as a consequence of the rumor-mongering process, which makes the test fail.
Gossipers should not receive back their own message. The reason is, a gossiper does not add itself to its status table, which means, by definition, that it cannot receive back its own messages. Recall that, when processing status messages, gossipers send each other messages only for ids seen in the status message.
Cristina