def test_email_verification_url_generated_correctly(self): # Arrange test_user = '******' # Act url = SMTPService._generate_email_verification_url('*****@*****.**', test_user) parsed_url = urlparse(url) query = parse_qs(parsed_url.query) self.assertEqual(parsed_url.path, '/api/auth/email') self.assertEqual(query['username'], [test_user]) self.assertTrue(query['token']) # Token random every time so just check we have something
def test_can_parse_email_verification_token(self): # Arrange - Generate valid email verification url test_email = '*****@*****.**' auth_url = SMTPService._generate_email_verification_url( test_email, 'mrtest') parsed_url = urlparse(auth_url) query = parse_qs(parsed_url.query) # Arrange is_valid, email_address = AuthenticationService.is_valid_token( query['token'][0], 86400) # Assert self.assertTrue(is_valid) self.assertEqual(email_address, test_email)