def test_mail_mail_confirmation(self): """ test the mail_mail_confirmation view """ from c3smembership.administration import mail_mail_conf self.config.add_route('join', '/') self.config.add_route('dashboard', '/') from pyramid_mailer import get_mailer request = testing.DummyRequest() request.matchdict = {'memberid': '1'} request.cookies['on_page'] = 1 request.cookies['order'] = 'asc' request.cookies['orderby'] = 'id' mailer = get_mailer(request) result = mail_mail_conf(request) self.assertTrue(result.status_code == 302) # redirect self.assertEqual(len(mailer.outbox), 1) self.assertEqual( mailer.outbox[0].subject, u"[C3S] Please confirm your email address! " u"/ Bitte E-Mail-Adresse bestätigen!") # print mailer.outbox[0].body self.assertTrue(u"Hello" in mailer.outbox[0].body) self.assertTrue(u"Hallo" in mailer.outbox[0].body) _m = C3sMember.get_by_id(1) self.assertTrue(u'{} {}'.format(_m.firstname, _m.lastname) in mailer.outbox[0].body) self.assertTrue(u"http://foo.com/vae/" in mailer.outbox[0].body)
def test_mail_mail_confirmation(self): """ test the mail_mail_confirmation view """ from c3smembership.administration import mail_mail_conf self.config.add_route('join', '/') self.config.add_route('dashboard', '/') from pyramid_mailer import get_mailer request = testing.DummyRequest() request.matchdict = {'memberid': '1'} request.cookies['on_page'] = 1 request.cookies['order'] = 'asc' request.cookies['orderby'] = 'id' mailer = get_mailer(request) result = mail_mail_conf(request) self.assertTrue(result.status_code == 302) # redirect self.assertEqual(len(mailer.outbox), 1) self.assertEqual( mailer.outbox[0].subject, u"[C3S] Please confirm your Email address! " u"/ Bitte E-Mail-Adresse bestätigen!" ) self.assertTrue( u"Dear C3S-Supporter," in mailer.outbox[0].body) self.assertTrue( u"Liebe_r C3S-Unterstützer_in," in mailer.outbox[0].body) self.assertTrue( u"http://foo.com/vae/" in mailer.outbox[0].body)
def test_mail_mail_confirmation_invalid_id(self): """ test the mail_mail_confirmation view """ from c3smembership.administration import mail_mail_conf self.config.add_route('join', '/') self.config.add_route('dashboard', '/dashboard/0/id/asc') request = testing.DummyRequest() request.matchdict = {'memberid': '10000'} # invalid! request.cookies['on_page'] = 1 request.cookies['order'] = 'asc' request.cookies['orderby'] = 'id' result = mail_mail_conf(request) self.assertTrue(result.status_code == 302) # redirect self.assertTrue( # to dashboard 'http://example.com/dashboard/0/id/asc' in result.location)
def test_mail_mail_confirmation(self): """ test the mail_mail_confirmation view """ from c3smembership.administration import mail_mail_conf self.config.add_route('join', '/') self.config.add_route('dashboard', '/') from pyramid_mailer import get_mailer request = testing.DummyRequest() request.matchdict = {'memberid': '1'} request.cookies['on_page'] = 1 request.cookies['order'] = 'asc' request.cookies['orderby'] = 'id' mailer = get_mailer(request) result = mail_mail_conf(request) self.assertTrue(result.status_code == 302) # redirect self.assertEqual(len(mailer.outbox), 1) self.assertEqual( mailer.outbox[0].subject, u"[C3S] Please confirm your email address! " u"/ Bitte E-Mail-Adresse bestätigen!" ) # print mailer.outbox[0].body self.assertTrue( u"Hello" in mailer.outbox[0].body) self.assertTrue( u"Hallo" in mailer.outbox[0].body) _m = C3sMember.get_by_id(1) self.assertTrue( u'{} {}'.format( _m.firstname, _m.lastname) in mailer.outbox[0].body) self.assertTrue( u"http://foo.com/vae/" in mailer.outbox[0].body)
def test_verify_mailaddress_conf_valid_token(self): """ test *both* the mail_mail_confirmation view *and* the verify_mailaddress_conf view """ from c3smembership.administration import mail_mail_conf from c3smembership.administration import verify_mailaddress_conf from pyramid_mailer import get_mailer # prepare: send mail confirmatio email and thus have a token for her request1 = testing.DummyRequest() self.config.add_route('dashboard', '/') request1.matchdict = {'memberid': '1'} request1.cookies['on_page'] = 1 request1.cookies['order'] = 'asc' request1.cookies['orderby'] = 'id' result1 = mail_mail_conf(request1) result1 _member = C3sMember.get_by_id(1) _refcode = _member.email_confirm_code _token = _member.email_confirm_token _email = _member.email # check: try with good refcode and token, but wrong email request = testing.DummyRequest() request.matchdict = { 'email': u'*****@*****.**', 'refcode': _refcode, 'token': _token, } mailer = get_mailer(request) result = verify_mailaddress_conf(request) self.assertEqual(len(mailer.outbox), 1) self.assertTrue( 'bad token/email. ' 'please contact [email protected]!' in result['result_msg']) self.assertTrue(result['confirmed'] is False) # check: try with good refcode and token AND good email request = testing.DummyRequest() request.matchdict = { 'email': _email, 'refcode': _refcode, 'token': _token, } result = verify_mailaddress_conf(request) self.assertEqual(len(mailer.outbox), 2) self.assertTrue( '[C3S Yes!] afm email confirmed' in mailer.outbox[1].subject) self.assertTrue('see http://foo.com/detail/1' in mailer.outbox[1].body) # another test: try again: token works only once! request = testing.DummyRequest() request.matchdict = { 'email': _email, 'refcode': _refcode, 'token': _token, } result = verify_mailaddress_conf(request) self.assertEqual(len(mailer.outbox), 2) # no change self.assertTrue( 'your token is invalid. ' 'please contact [email protected]!' in result['result_msg']) self.assertTrue(result['confirmed'] is False)
def test_verify_mailaddress_conf_valid_token(self): """ test *both* the mail_mail_confirmation view *and* the verify_mailaddress_conf view """ from c3smembership.administration import mail_mail_conf from c3smembership.administration import verify_mailaddress_conf from pyramid_mailer import get_mailer # prepare: send mail confirmatio email and thus have a token for her request1 = testing.DummyRequest() self.config.add_route('dashboard', '/') request1.matchdict = {'memberid': '1'} request1.cookies['on_page'] = 1 request1.cookies['order'] = 'asc' request1.cookies['orderby'] = 'id' result1 = mail_mail_conf(request1) result1 _member = C3sMember.get_by_id(1) _refcode = _member.email_confirm_code _token = _member.email_confirm_token _email = _member.email # check: try with good refcode and token, but wrong email request = testing.DummyRequest() request.matchdict = { 'email': u'*****@*****.**', 'refcode': _refcode, 'token': _token, } mailer = get_mailer(request) result = verify_mailaddress_conf(request) self.assertEqual(len(mailer.outbox), 1) self.assertTrue( 'bad token/email. ' 'please contact [email protected]!' in result['result_msg']) self.assertTrue(result['confirmed'] is False) # check: try with good refcode and token AND good email request = testing.DummyRequest() request.matchdict = { 'email': _email, 'refcode': _refcode, 'token': _token, } result = verify_mailaddress_conf(request) self.assertEqual(len(mailer.outbox), 2) self.assertTrue( '[C3S Yes!] afm email confirmed' in mailer.outbox[1].subject) self.assertTrue( 'see http://foo.com/detail/1' in mailer.outbox[1].body) # another test: try again: token works only once! request = testing.DummyRequest() request.matchdict = { 'email': _email, 'refcode': _refcode, 'token': _token, } result = verify_mailaddress_conf(request) self.assertEqual(len(mailer.outbox), 2) # no change self.assertTrue( 'your token is invalid. ' 'please contact [email protected]!' in result['result_msg']) self.assertTrue(result['confirmed'] is False)