def test_basic(self): t = self.new_tracker('url1') v = self.new_visitor('trackee1') i = t.add_visitor(v) url = urlex.hashedurl_pixelpng(i.uuid) response = self.client.get(url) self.assertEquals(response.status_code, 200) # In imghdr.what(), the first arg (the filename) is ignored when the # 'h' arg (a byte stream) is given. self.assertEquals(imghdr.what('', h=response.content), 'png')
def test_send_pixelimage(self): """Sends an email containing a pixelimage.""" v = Visitor(username='******', emailaddress='*****@*****.**') v.save() html = '<html><head></head><body></body></html>' de = DraftEmail(fromemail='', subject='Subject') de.message = html de.pixelimage = True de.save() de.pending_recipients.add(v) de.save() eml = de.send() self.assertTrue(de.sent) qs = TrackedInstance.objects.filter(visitor=v) self.assertEquals(qs.count(), 1) uuid = qs[0].uuid self.assertEquals(len(django_email.outbox), 1) msg = django_email.outbox[0] content,mime = msg.alternatives[0] self.assertEquals(mime, 'text/html') ##print '\n{0}\n'.format(content) e = xml.etree.ElementTree.fromstring(content) self.assertEquals(e.tag, 'html') body = e.find('body') self.assertNotEquals(body, None) img = body.find('img') self.assertNotEquals(img, None) src = img.get('src', default=None) self.assertNotEquals(src, None) url = urlex.hashedurl_pixelpng(uuid) self.assertEquals(src, '{0}{1}'.format(app_settings.URLBASE, url))