Adding test test_filter_3_senders_1_receiver

This commit is contained in:
aya 2024-10-31 09:20:29 +03:00
parent 63348d6a16
commit a4065861a7
1 changed files with 28 additions and 23 deletions

View File

@ -178,30 +178,35 @@ class TestE2E(StepsFilter, StepsStore, StepsRelay, StepsLightPush):
# self.node1 relays and we check that self.node10 receives the message # self.node1 relays and we check that self.node10 receives the message
self.check_published_message_reaches_relay_peer(sender=self.node1, peer_list=[self.node10], message_propagation_delay=1) self.check_published_message_reaches_relay_peer(sender=self.node1, peer_list=[self.node10], message_propagation_delay=1)
def test_filter_3_senders_1_receiver(self):
def test_temp_test(self):
self.node4 = WakuNode(NODE_2, f"node3_{self.test_id}") self.node4 = WakuNode(NODE_2, f"node3_{self.test_id}")
self.node5 = WakuNode(NODE_2, f"node3_{self.test_id}") self.node5 = WakuNode(NODE_2, f"node3_{self.test_id}")
logger.debug("Start 5 nodes")
self.node1.start(relay="true", store="true") self.node1.start(relay="true", store="true")
self.node2.start(relay="true", store="false", discv5_bootstrap_node=self.node1.get_enr_uri()) self.node2.start(relay="true", store="false", discv5_bootstrap_node=self.node1.get_enr_uri())
self.node3.start(relay="true", store="false", filter="true", discv5_bootstrap_node=self.node2.get_enr_uri()) self.node3.start(relay="true", store="true", filter="true", discv5_bootstrap_node=self.node2.get_enr_uri())
self.node4.start( self.node4.start(relay="true", filter="true", store="false", discv5_bootstrap_node=self.node3.get_enr_uri())
relay="false", filter="true", filternode=self.node3.get_multiaddr_with_id(), store="false", discv5_bootstrap_node=self.node3.get_enr_uri() self.node5.start(
relay="false", filter="true", filternode=self.node4.get_multiaddr_with_id(), store="false", discv5_bootstrap_node=self.node3.get_enr_uri()
) )
# self.node5.start(relay="false", filter="true",filternode=self.node3.get_multiaddr_with_id(), store="false", discv5_bootstrap_node=self.node3.get_enr_uri())
logger.debug("Subscribe nodes to relay pubsub topics") logger.debug(f"Subscribe nodes to relay pubsub topic {self.test_pubsub_topic}")
self.node1.set_relay_subscriptions([self.test_pubsub_topic]) node_list = [self.node1, self.node2, self.node3, self.node4]
self.node2.set_relay_subscriptions([self.test_pubsub_topic]) for node in node_list:
self.node3.set_relay_subscriptions([self.test_pubsub_topic]) node.set_relay_subscriptions([self.test_pubsub_topic])
delay(5) self.wait_for_autoconnection(node_list, hard_wait=30)
self.node4.set_filter_subscriptions({"requestId": "1", "contentFilters": [self.test_content_topic], "pubsubTopic": self.test_pubsub_topic})
delay(2)
self.publish_message(sender=self.node1, pubsub_topic=self.test_pubsub_topic, message=self.create_message())
delay(3)
self.publish_message(sender=self.node2, pubsub_topic=self.test_pubsub_topic, message=self.create_message(payload=to_base64("dummy")))
delay(2)
messages_response = self.get_filter_messages(self.test_content_topic, pubsub_topic=self.test_pubsub_topic, node=self.node4)
logger.debug(f"Response for node 6 is {messages_response}") logger.debug(f"Node5 make filter request pubtopic {self.test_pubsub_topic} " f"{self.test_content_topic}and content topic ")
self.node5.set_filter_subscriptions({"requestId": "1", "contentFilters": [self.test_content_topic], "pubsubTopic": self.test_pubsub_topic})
delay(1)
logger.debug("3 Nodes publish 3 messages")
for node in node_list[:-1]:
self.publish_message(sender=node, pubsub_topic=self.test_pubsub_topic, message=self.create_message())
delay(1)
logger.debug("Node5 requests messages of subscribed filter topic")
messages_response = self.get_filter_messages(self.test_content_topic, pubsub_topic=self.test_pubsub_topic, node=self.node5)
logger.debug(f"Response for node 5 is {len(messages_response)}")
assert len(messages_response) == 3, "Received messages != published !!"