@@ -50,41 +50,43 @@ def run(self, msg):
5050
5151
5252def main ():
53- message_center = Provider ()
54-
55- fftv = Publisher (message_center )
56-
57- jim = Subscriber ("jim" , message_center )
58- jim .subscribe ("cartoon" )
59- jack = Subscriber ("jack" , message_center )
60- jack .subscribe ("music" )
61- gee = Subscriber ("gee" , message_center )
62- gee .subscribe ("movie" )
63- vani = Subscriber ("vani" , message_center )
64- vani .subscribe ("movie" )
65- vani .unsubscribe ("movie" )
66-
67- fftv .publish ("cartoon" )
68- fftv .publish ("music" )
69- fftv .publish ("ads" )
70- fftv .publish ("movie" )
71- fftv .publish ("cartoon" )
72- fftv .publish ("cartoon" )
73- fftv .publish ("movie" )
74- fftv .publish ("blank" )
75-
76- message_center .update ()
53+ """
54+ >>> message_center = Provider()
55+
56+ >>> fftv = Publisher(message_center)
57+
58+ >>> jim = Subscriber("jim", message_center)
59+ >>> jim.subscribe("cartoon")
60+ >>> jack = Subscriber("jack", message_center)
61+ >>> jack.subscribe("music")
62+ >>> gee = Subscriber("gee", message_center)
63+ >>> gee.subscribe("movie")
64+ >>> vani = Subscriber("vani", message_center)
65+ >>> vani.subscribe("movie")
66+ >>> vani.unsubscribe("movie")
67+
68+ # Note that no one subscirbed to `ads`
69+ # and that vani changed their mind
70+
71+ >>> fftv.publish("cartoon")
72+ >>> fftv.publish("music")
73+ >>> fftv.publish("ads")
74+ >>> fftv.publish("movie")
75+ >>> fftv.publish("cartoon")
76+ >>> fftv.publish("cartoon")
77+ >>> fftv.publish("movie")
78+ >>> fftv.publish("blank")
79+
80+ >>> message_center.update()
81+ jim got cartoon
82+ jack got music
83+ gee got movie
84+ jim got cartoon
85+ jim got cartoon
86+ gee got movie
87+ """
7788
7889
7990if __name__ == "__main__" :
80- main ()
81-
82-
83- OUTPUT = """
84- jim got cartoon
85- jack got music
86- gee got movie
87- jim got cartoon
88- jim got cartoon
89- gee got movie
90- """
91+ import doctest
92+ doctest .testmod ()
0 commit comments