def test_attachment_executed(self):
def handler(instance, **kwarg):
# get post on landing page event
if instance.target_tracker.key != TRACKER_ATTACHMENT_EXECUTED:
# ignore other target event
return
self.assertEqual(instance.ip, '127.0.0.1')
self.assertEqual(instance.user_agent, 'Outlook')
raise SuccessException()
post_save.connect(handler, sender=TrackerInfos)
# call tracker
self.send_campaign()
attachment = json.loads(mail.outbox[-1].attachments[0][1].decode())
tracker_url = attachment['tracker_url']
# test if handler has call
with self.assertRaises(SuccessException):
self.client.defaults['HTTP_USER_AGENT'] = 'Outlook'
self.client.get(tracker_url)
# clean
self.assertTrue(post_save.disconnect(handler, sender=TrackerInfos))
评论列表
文章目录