@@ -204,6 +204,20 @@ def test_parse(self):
204204 self .assertEqual (events [11 ].source .sender_id , 'U206d25c2ea6bd87c17655609a1c37cb8' )
205205 self .assertEqual (events [11 ].beacon .hwid , 'd41d8cd98f' )
206206 self .assertEqual (events [11 ].beacon .type , 'enter' )
207+ self .assertEqual (events [11 ].beacon .device_message , None )
208+
209+ # BeaconEvent, SourceUser (with device message)
210+ self .assertIsInstance (events [12 ], BeaconEvent )
211+ self .assertEqual (events [12 ].reply_token , 'nHuyWiB7yP5Zw52FIkcQobQuGDXCTA' )
212+ self .assertEqual (events [12 ].type , 'beacon' )
213+ self .assertEqual (events [12 ].timestamp , 1462629479859 )
214+ self .assertIsInstance (events [12 ].source , SourceUser )
215+ self .assertEqual (events [12 ].source .type , 'user' )
216+ self .assertEqual (events [12 ].source .user_id , 'U206d25c2ea6bd87c17655609a1c37cb8' )
217+ self .assertEqual (events [12 ].source .sender_id , 'U206d25c2ea6bd87c17655609a1c37cb8' )
218+ self .assertEqual (events [12 ].beacon .hwid , 'd41d8cd98f' )
219+ self .assertEqual (events [12 ].beacon .type , 'enter' )
220+ self .assertEqual (events [12 ].beacon .device_message , bytearray (b'\x12 4Vx\x90 \xab \xcd \xef ' ))
207221
208222
209223class TestWebhookHandler (unittest .TestCase ):
@@ -271,6 +285,7 @@ def test_handler(self):
271285 self .assertEqual (self .calls [9 ], 'default leave' )
272286 self .assertEqual (self .calls [10 ], '6 postback' )
273287 self .assertEqual (self .calls [11 ], '7 beacon' )
288+ self .assertEqual (self .calls [12 ], '7 beacon' )
274289
275290
276291if __name__ == '__main__' :
0 commit comments