@@ -1994,6 +1994,30 @@ def test_consumer_name(self):
19941994 self .assertEqual (consumer .consumer_name (), name )
19951995 client .close ()
19961996
1997+ def test_deserialize_msg_id_with_topic (self ):
1998+ client = Client (self .serviceUrl )
1999+ topic1 = "deserialize-msg-id-with-topic1-" + str (time .time ())
2000+ topic2 = "deserialize-msg-id-with-topic2-" + str (time .time ())
2001+ consumer = client .subscribe ([topic1 , topic2 ], 'sub' )
2002+ producer1 = client .create_producer (topic1 )
2003+ producer2 = client .create_producer (topic2 )
2004+ producer1 .send (b"msg-1" )
2005+ producer2 .send (b"msg-2" )
2006+
2007+ serialized_msg_ids = dict ()
2008+ for _ in range (2 ):
2009+ msg = consumer .receive (TM )
2010+ serialized_msg_ids [msg .topic_name ()] = msg .message_id ().serialize ()
2011+ for topic , serialized_msg_id in serialized_msg_ids .items ():
2012+ deserialized_msg_id = MessageId .deserialize (serialized_msg_id , topic = topic )
2013+ consumer .acknowledge_cumulative (deserialized_msg_id )
2014+ consumer .close ()
2015+
2016+ consumer = client .subscribe ([topic1 , topic2 ], 'sub' )
2017+ producer1 .send (b'msg-3' )
2018+ msg = consumer .receive (TM )
2019+ self .assertEqual (msg .value (), b'msg-3' )
2020+ client .close ()
19972021
19982022if __name__ == "__main__" :
19992023 main ()
0 commit comments