def test_6_invalid_image(self): now = time.mktime(time.gmtime()) msg = NOT_AN_IMAGE % { 'content_type': 'text/rtf' } environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } self.assertRaises(email.NoImage, lambda: email.submit_from_file(environ, StringIO(msg))) msg = NOT_AN_IMAGE % { 'content_type': 'image/jpg' } environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } self.assertRaises(email.NoImage, lambda: email.submit_from_file(environ, StringIO(msg)))
def test_3_invalid_hunt(self): now = time.mktime(time.gmtime()) msg = TESTEMAIL % { 'from': '*****@*****.**', 'to': 'foo', 'subject': 'test 1', 'date': formatdate(now) } environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } self.assertRaises(email.HuntDoesNotExist, lambda: email.submit_from_file(environ, StringIO(msg))) environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } self.assertRaises(email.HuntDoesNotExist, lambda: email.submit_from_file(environ, StringIO(msg)))
def test_4_not_current(self): now = time.mktime((2009,5,20,1,2,3,0,0,0)) msg = TESTEMAIL % { 'from': '*****@*****.**', 'to': 'foo', 'subject': 'test 1', 'date': formatdate(now) } environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } self.assertRaises(email.HuntNotCurrent, lambda: email.submit_from_file(environ, StringIO(msg))) now = time.mktime((2020,5,20,1,2,3,0,0,0)) msg = TESTEMAIL % { 'from': '*****@*****.**', 'to': 'foo', 'subject': 'test 1', 'date': formatdate(now) } environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } self.assertRaises(email.HuntNotCurrent, lambda: email.submit_from_file(environ, StringIO(msg)))
def test_1_submit_anon(self): (now, nowstr) = self.get_local_now() msg = TESTEMAIL % { 'from': 'Paul Watts <*****@*****.**>', 'to': '*****@*****.**', 'subject': 'test 1', 'date': nowstr } environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } submission = email.submit_from_file(environ, StringIO(msg)) self.assert_(submission) self.assertEquals(submission.user, None) self.assertEquals(submission.hunt, self.hunt) self.assertEquals(submission.time, now) self.assert_(submission.photo) self.assertEquals(submission.photo_width, 240) self.assertEquals(submission.photo_height, 180) self.assertEquals(submission.anon_source, 'email:name=Paul+Watts&addr=paulw%40test.com') self.assertEquals(submission.via, 'email')
def test_2_submit_user(self): gmnow = time.gmtime() now = time.mktime(gmnow) msg = TESTEMAIL % { 'from': '*****@*****.**', 'to': '*****@*****.**', 'subject': 'test 1', 'date': formatdate(now) } environ = { 'RECIPIENT': '*****@*****.**', 'SENDER': '*****@*****.**' } submission = email.submit_from_file(environ, StringIO(msg)) self.assert_(submission) self.assertEquals(submission.user, self.user) self.assertEquals(submission.hunt, self.hunt) self.assertEquals(submission.time, datetime(*gmnow[:6])) self.assert_(submission.photo) self.assertEquals(submission.photo_width, 240) self.assertEquals(submission.photo_height, 180) self.assertEquals(submission.anon_source, None) self.assertEquals(submission.via, 'email')
if __name__ == '__main__': import os,sys from gonzo.connectors import email email.submit_from_file(os.environ, sys.stdin)
def test_5_not_multipart(self): self.assertRaises(email.NoImage, lambda: email.submit_from_file({}, StringIO(NOT_MULTIPART)))