Пример #1
0
class UserViewSetChangePasswordTestCase(TestCase):
    """Tests for .viewsets.UserViewSet.forgot_password"""
    def setUp(self):
        self.user = UserFactory(verified=True)
        self.client._login(self.user)
        self.url = f'/api/v1/users/profiles/change_password/'

    def test_change_password(self):
        response = self.client.put(self.url,
                                   data=json.dumps({
                                       'password': '******',
                                       'confirmed_password': '******'
                                   }),
                                   content_type='application/json')
        self.user.refresh_from_db()
        self.assertEqual(response.status_code, 200)
        self.assertTrue(self.user.check_password('test'))

    def test_change_password_as_unauthenticated(self):
        """A unauthenticated user should not be able to change password"""
        self.client.logout()
        response = self.client.put(self.url,
                                   data=json.dumps({
                                       'password': '******',
                                       'confirmed_password': '******'
                                   }),
                                   content_type='application/json')
        self.user.refresh_from_db()
        self.assertEqual(response.status_code, 401)
        self.assertFalse(self.user.check_password('test'))
Пример #2
0
class TestUserUpdateViewSet(TestCase):
    def setUp(self):
        self.clinic = ClinicFactory()
        self.url = '/api/v1/users/profiles/'
        self.user = UserFactory(verified=True)

    def test_update_user(self):

        self.client._login(self.user)
        self.treatment_time = timezone.now()
        data = {
            'username': '******',
        }

        data = json.dumps(data, cls=DjangoJSONEncoder)
        response = self.client.put(self.url + str(self.user.link_id) + '/',
                                   data=data,
                                   content_type='application/json')
        self.user.refresh_from_db()
        self.assertEqual(response.status_code, 200)
        self.assertEqual(User.objects.count(), 1)
        self.assertEqual(str(response.content, encoding='utf8'),
                         data.replace(" ", ""))