Some checks failed
Build and Push to Docker Hub / build-test-push (push) Failing after 1m55s
41 lines
1.6 KiB
Python
Executable File
41 lines
1.6 KiB
Python
Executable File
"""
|
|
Authorization Users Test Cases
|
|
"""
|
|
|
|
from django import test
|
|
from django.template import defaultfilters
|
|
from rest_framework.test import APIRequestFactory
|
|
|
|
from core.http.database import factory
|
|
from core.apps.accounts.views import sms
|
|
|
|
|
|
class RegisterViewTest(test.TestCase):
|
|
def setUp(self):
|
|
self.factory = APIRequestFactory()
|
|
self.view = sms.RegisterView.as_view()
|
|
|
|
def test_register_user(self):
|
|
data = {"phone": "+998901234567", "jshir": "1", "password": "password"}
|
|
request = self.factory.post(defaultfilters.url("register"), data=data)
|
|
response = self.view(request)
|
|
self.assertEqual(response.status_code, 200)
|
|
self.assertEqual(
|
|
response.data["message"], msg="You have successfully registered."
|
|
)
|
|
|
|
def test_register_user_with_invalid_phone(self):
|
|
data = {"phone": "invalid_phone", "jshir": "1", "password": "password"}
|
|
request = self.factory.post(defaultfilters.url("register"), data=data)
|
|
response = self.view(request)
|
|
self.assertEqual(response.status_code, 400)
|
|
self.assertEqual(response.data["detail"], "Invalid phone number.")
|
|
|
|
def test_register_user_with_invalid_confirmation_code(self):
|
|
user = factory.UserFactory()
|
|
data = {"phone": user.handle()["phone"], "code": "invalid_code"}
|
|
request = self.factory.post(defaultfilters.url("register"), data=data)
|
|
response = self.view(request)
|
|
self.assertEqual(response.status_code, 400)
|
|
self.assertEqual(response.data["detail"], "Invalid confirmation code.")
|